Continuous integration (#2)
* Add CI workflow similar to other zebra * Bump cache TTL to 24hours * Expand image name to include full repo owner/repo-name/branch-name * Force to lowercase because google container registry demands it This may not be universally shell compatible * Use bash as gcloud action container entrypoint
This commit is contained in:
parent
ec363d2d41
commit
8fe3403de0
|
@ -0,0 +1,24 @@
|
|||
name: CI
|
||||
|
||||
on: [push]
|
||||
|
||||
jobs:
|
||||
|
||||
build:
|
||||
name: Google Cloud Build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@master
|
||||
- run:
|
||||
- name: Authenticate w/ Google Cloud
|
||||
uses: actions/gcloud/auth@master
|
||||
env:
|
||||
GCLOUD_AUTH: ${{ secrets.GCLOUD_AUTH }}
|
||||
- name: Build, Test, Push to GCR
|
||||
uses: actions/gcloud/cli@master
|
||||
with:
|
||||
entrypoint: bash
|
||||
args: |
|
||||
-l -c "BRANCH_NAME=$GITHUB_REPOSITORY/$(expr $GITHUB_REF : '.*/\(.*\)') && \
|
||||
BRANCH_NAME=${BRANCH_NAME,,} && \
|
||||
gcloud builds submit . --config cloudbuild.yaml --project zealous-zebra --substitutions BRANCH_NAME=$BRANCH_NAME"
|
|
@ -0,0 +1,22 @@
|
|||
FROM rust:stretch as base
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
make cmake g++ gcc
|
||||
|
||||
RUN mkdir /zebra
|
||||
WORKDIR /zebra
|
||||
|
||||
ENV RUST_BACKTRACE 1
|
||||
ENV CARGO_HOME /zebra/.cargo/
|
||||
|
||||
# Copy local code to the container image.
|
||||
# Assumes that we are in the git repo.
|
||||
|
||||
COPY . .
|
||||
|
||||
RUN cargo fetch --verbose
|
||||
|
||||
COPY . .
|
||||
|
||||
RUN rustc -V; cargo -V; rustup -V; cargo test --all && cargo build --release
|
|
@ -0,0 +1,11 @@
|
|||
steps:
|
||||
- name: 'gcr.io/kaniko-project/executor:latest'
|
||||
args:
|
||||
- --destination=gcr.io/$PROJECT_ID/$BRANCH_NAME
|
||||
- --cache=true
|
||||
- --cache-ttl=24h
|
||||
|
||||
options:
|
||||
machineType: 'N1_HIGHCPU_32'
|
||||
|
||||
timeout: 3600s # One hour for all steps.
|
Loading…
Reference in New Issue