Skip to content

Commit a815403

Browse files
fix docker publish (pyth-network -> pythfoundation); cleanup workflow
1 parent 343685d commit a815403

File tree

1 file changed

+20
-29
lines changed

1 file changed

+20
-29
lines changed

.github/workflows/docker.yaml

Lines changed: 20 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,12 @@ on:
77

88
env:
99
SOLANA_VERSION: 1.7.12
10-
DOCKER_SERVER: docker.io
10+
DOCKER_HUB: docker.io
11+
DOCKER_USER: ${{ secrets.DOCKER_IO_USER }}
12+
IS_RELEASE: ${{
13+
startsWith( github.ref, 'refs/tags/devnet-' ) ||
14+
startsWith( github.ref, 'refs/tags/testnet-' ) ||
15+
startsWith( github.ref, 'refs/tags/mainnet-' ) }}
1116

1217
jobs:
1318
build:
@@ -19,41 +24,27 @@ jobs:
1924
- name: Initialize Environment
2025
run: |
2126
set -eux
22-
DOCKER_IMAGE="${GITHUB_REPOSITORY}:${GITHUB_REF##*/}"
23-
echo "DOCKER_IMAGE=${DOCKER_IMAGE}" >> "${GITHUB_ENV}"
27+
REPO_NAME="$( basename "${GITHUB_REPOSITORY}" )"
28+
REF_NAME="$( basename "${GITHUB_REF}" )"
29+
echo "DOCKER_IMAGE=${REPO_NAME}:${REF_NAME}" >> "${GITHUB_ENV}"
2430
2531
- name: Build Docker Image
2632
run: |
2733
set -eux
28-
29-
# GITHUB_WORKSPACE may be relative to "/".
30-
cd /
31-
cd "${GITHUB_WORKSPACE}"
32-
3334
docker build \
3435
--file docker/Dockerfile \
35-
--build-arg SOLANA_VERSION="${{ env.SOLANA_VERSION }}" \
36-
--tag "${{ env.DOCKER_IMAGE }}" \
36+
--build-arg SOLANA_VERSION="${SOLANA_VERSION}" \
37+
--tag "${DOCKER_IMAGE}" \
3738
.
3839
3940
- name: Publish Docker Image
41+
if: env.IS_RELEASE == 'true'
4042
run: |
41-
# Do not set -x before referencing secrets.
42-
set -eu
43-
44-
echo "${{ secrets.DOCKER_IO_PASS }}" | docker login \
45-
"${{ env.DOCKER_SERVER }}" \
46-
-u "${{ secrets.DOCKER_IO_USER }}" \
47-
--password-stdin
48-
49-
set -x
50-
SRC="${{ env.DOCKER_IMAGE }}"
51-
DST="${{ env.DOCKER_SERVER }}/${SRC}"
52-
docker image tag "${SRC}" "${DST}"
53-
docker image push "${DST}"
54-
55-
# Only publish if tagged as a release.
56-
if: |
57-
startsWith( github.ref, 'refs/tags/devnet-' )
58-
|| startsWith( github.ref, 'refs/tags/testnet-' )
59-
|| startsWith( github.ref, 'refs/tags/mainnet-' )
43+
function publish() {
44+
set -eux
45+
PUB_IMAGE="${DOCKER_HUB}/${DOCKER_USER}/${DOCKER_IMAGE}"
46+
docker login "${DOCKER_HUB}" -u "${DOCKER_USER}" --password-stdin
47+
docker image tag "${DOCKER_IMAGE}" "${PUB_IMAGE}"
48+
docker image push "${PUB_IMAGE}"
49+
}
50+
echo "${{ secrets.DOCKER_IO_PASS }}" | publish

0 commit comments

Comments
 (0)