Skip to content

Commit 4699a97

Browse files
authored
Merge branch 'jkao97/verify-and-build-images-for-workflows' into jkao97/test-verify-and-build-images-for-workflows
2 parents 86d19e7 + 314115b commit 4699a97

File tree

1 file changed

+25
-54
lines changed

1 file changed

+25
-54
lines changed

.github/workflows/workflow-run-docker-rust-build.yaml

Lines changed: 25 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -73,23 +73,36 @@ permissions:
7373
id-token: write #required for GCP Workload Identity federation which we use to login into Google Artifact Registry
7474

7575
jobs:
76-
pre-build-validation:
77-
outputs:
78-
image-exist: ${{ steps.set-output.outputs.image-exist }}
79-
runs-on: runs-on,cpu=4,family=c7,image=aptos-ubuntu-x64,run-id=${{ github.run_id }},spot=co,disk=small
80-
steps:
76+
rust-all:
77+
runs-on: runs-on,cpu=64,family=c7,image=aptos-ubuntu-x64,run-id=${{ github.run_id }},spot=co,disk=large
78+
steps:
8179
- uses: actions/checkout@v4
8280
with:
8381
ref: ${{ env.GIT_SHA }}
8482

85-
- name: Authenticate to Google Cloud
86-
id: auth
87-
uses: "google-github-actions/auth@v2"
83+
- name: Setup Runs On Cache for Docker
84+
uses: runs-on/cache@v4
85+
with:
86+
path: |
87+
/home/runner/docker-cache.tzst
88+
key: docker-buildkit-cache-${{ env.PROFILE }}-${{ env.FEATURES }}${{ hashFiles('Cargo.lock') }}
89+
90+
- name: Untar cache if present
91+
run: |
92+
if [ -f /home/runner/docker-cache.tzst ]; then
93+
sudo systemctl stop docker
94+
sudo tar --posix -xf /home/runner/docker-cache.tzst -P -C /var/lib/docker --use-compress-program zstdmt .
95+
sudo systemctl start docker
96+
fi
97+
98+
- uses: aptos-labs/aptos-core/.github/actions/docker-setup@main
8899
with:
89-
workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}
90-
service_account: ${{ secrets.GCP_SERVICE_ACCOUNT_EMAIL }}
91-
export_environment_variables: false
92-
create_credentials_file: true
100+
GCP_WORKLOAD_IDENTITY_PROVIDER: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}
101+
GCP_SERVICE_ACCOUNT_EMAIL: ${{ secrets.GCP_SERVICE_ACCOUNT_EMAIL }}
102+
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
103+
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
104+
AWS_DOCKER_ARTIFACT_REPO: ${{ secrets.AWS_DOCKER_ARTIFACT_REPO }}
105+
GIT_CREDENTIALS: ${{ secrets.GIT_CREDENTIALS }}
93106

94107
- name: Check if docker images already exist
95108
id: check-images
@@ -99,15 +112,6 @@ jobs:
99112
GIT_SHA: ${{ env.GIT_SHA }}
100113
GCP_DOCKER_ARTIFACT_REPO: ${{ env.GCP_DOCKER_ARTIFACT_REPO }}
101114
WAIT_FOR_IMAGE_SECONDS: 1
102-
103-
- name: Set output
104-
id: set-output
105-
run: |
106-
if [ "${{ steps.check-images.outcome }}" = "success" ]; then
107-
echo "image-exist=true" >> $GITHUB_OUTPUT
108-
else
109-
echo "image-exist=false" >> $GITHUB_OUTPUT
110-
fi
111115

112116
- name: Lock File Check and Lock if not exists
113117
id: check-lock
@@ -128,39 +132,6 @@ jobs:
128132
echo "Docker Build locked"
129133
fi
130134
131-
rust-all:
132-
runs-on: runs-on,cpu=64,family=c7,image=aptos-ubuntu-x64,run-id=${{ github.run_id }},spot=co,disk=large
133-
needs: pre-build-validation
134-
if: needs.pre-build-validation.outputs.image-exist == 'false'
135-
steps:
136-
- uses: actions/checkout@v4
137-
with:
138-
ref: ${{ env.GIT_SHA }}
139-
140-
- name: Setup Runs On Cache for Docker
141-
uses: runs-on/cache@v4
142-
with:
143-
path: |
144-
/home/runner/docker-cache.tzst
145-
key: docker-buildkit-cache-${{ env.PROFILE }}-${{ env.FEATURES }}${{ hashFiles('Cargo.lock') }}
146-
147-
- name: Untar cache if present
148-
run: |
149-
if [ -f /home/runner/docker-cache.tzst ]; then
150-
sudo systemctl stop docker
151-
sudo tar --posix -xf /home/runner/docker-cache.tzst -P -C /var/lib/docker --use-compress-program zstdmt .
152-
sudo systemctl start docker
153-
fi
154-
155-
- uses: aptos-labs/aptos-core/.github/actions/docker-setup@main
156-
with:
157-
GCP_WORKLOAD_IDENTITY_PROVIDER: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}
158-
GCP_SERVICE_ACCOUNT_EMAIL: ${{ secrets.GCP_SERVICE_ACCOUNT_EMAIL }}
159-
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
160-
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
161-
AWS_DOCKER_ARTIFACT_REPO: ${{ secrets.AWS_DOCKER_ARTIFACT_REPO }}
162-
GIT_CREDENTIALS: ${{ secrets.GIT_CREDENTIALS }}
163-
164135
- name: Build and Push Rust images
165136
run: docker/builder/docker-bake-rust-all.sh
166137
env:

0 commit comments

Comments
 (0)