[3.3.0] @subql/node-ethereum #98
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Node-to-docker" | |
on: | |
release: | |
types: | |
- published | |
workflow_dispatch: | |
inputs: | |
isLatest: | |
description: 'Add latest tag' | |
default: 'true' | |
required: true | |
jobs: | |
check: | |
runs-on: ubuntu-latest | |
outputs: | |
changes_found: ${{ steps.check_changes.outputs.changes_found }} | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 2 | |
- name: Check for package changes and commit message | |
id: check_changes | |
run: | | |
if [[ "${{ github.event_name }}" == "release" ]] | |
then | |
COMMIT_MESSAGE=$(git log -1 --pretty=format:"%s") | |
if [[ $COMMIT_MESSAGE == "[release]"* ]] && git diff --name-only HEAD~1 HEAD -- './packages/node/package.json' | |
then | |
echo "::set-output name=changes_found::true" | |
else | |
echo "::set-output name=changes_found::false" | |
fi | |
else | |
echo "::set-output name=changes_found::true" | |
fi | |
node-build-push-docker-onfinality: | |
needs: check | |
if: needs.check.outputs.changes_found == 'true' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 100 | |
token: ${{ secrets.REPO_TOKEN }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: onfinality | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
## node | |
- name: Get updated node version | |
id: get-node-version | |
run: | | |
sh .github/workflows/scripts/nodeVersion.sh | |
- run: yarn | |
- name: build | |
run: yarn build | |
- name: Build and push | |
if: github.event_name == 'workflow_dispatch' && github.event.inputs.isLatest == 'false' | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
platforms: arm64,amd64 | |
file: ./packages/node/Dockerfile | |
tags: onfinality/subql-node-ethereum:v${{ steps.get-node-version.outputs.NODE_VERSION }} | |
build-args: RELEASE_VERSION=${{ steps.get-node-version.outputs.NODE_VERSION }} | |
- name: Build and push | |
if: github.event_name == 'release' || (github.event_name == 'workflow_dispatch' && github.event.inputs.isLatest == 'true') | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
platforms: arm64,amd64 | |
file: ./packages/node/Dockerfile | |
tags: onfinality/subql-node-ethereum:v${{ steps.get-node-version.outputs.NODE_VERSION }},onfinality/subql-node-ethereum:latest | |
build-args: RELEASE_VERSION=${{ steps.get-node-version.outputs.NODE_VERSION }} | |
- name: Image digest | |
run: echo ${{ steps.docker_build.outputs.digest }} | |
node-flare-build-push-docker-onfinality: | |
needs: check | |
if: needs.check.outputs.changes_found == 'true' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 100 | |
token: ${{ secrets.REPO_TOKEN }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: onfinality | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
## node | |
- name: Get updated node version | |
id: get-node-version | |
run: | | |
sh .github/workflows/scripts/nodeVersion.sh | |
#Changes packages names | |
- name: Change common ethereum to flare | |
uses: jaywcjlove/github-action-package@main | |
with: | |
path: packages/common-ethereum/package.json | |
rename: '@subql/common-flare' | |
- name: Change types ethereum to flare | |
uses: jaywcjlove/github-action-package@main | |
with: | |
path: packages/types/package.json | |
rename: '@subql/types-flare' | |
- name: Change node ethereum to flare | |
uses: jaywcjlove/github-action-package@main | |
with: | |
path: packages/node/package.json | |
rename: '@subql/node-flare' | |
#update imports | |
- name: Update imports to flare | |
run: ./.github/workflows/scripts/update_flare_imports.sh | |
- run: yarn | |
- name: build | |
run: yarn build | |
- name: Debug dockerfile | |
run: cat ./packages/node/Dockerfile-flare | |
- name: Build and push flare | |
if: github.event_name == 'workflow_dispatch' && github.event.inputs.isLatest == 'false' | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
platforms: arm64,amd64 | |
file: ./packages/node/Dockerfile-flare | |
tags: onfinality/subql-node-flare:v${{ steps.get-node-version.outputs.NODE_VERSION }} | |
build-args: RELEASE_VERSION=${{ steps.get-node-version.outputs.NODE_VERSION }} | |
- name: Build and push flare | |
if: github.event_name == 'release' || (github.event_name == 'workflow_dispatch' && github.event.inputs.isLatest == 'true') | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
platforms: arm64,amd64 | |
file: ./packages/node/Dockerfile-flare | |
tags: onfinality/subql-node-flare:v${{ steps.get-node-version.outputs.NODE_VERSION }},onfinality/subql-node-flare:latest | |
build-args: RELEASE_VERSION=${{ steps.get-node-version.outputs.NODE_VERSION }} | |
- name: Image digest | |
run: echo ${{ steps.docker_build.outputs.digest }} | |
node-build-push-docker-subquery: | |
needs: check | |
if: needs.check.outputs.changes_found == 'true' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 100 | |
token: ${{ secrets.REPO_TOKEN }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: subquerynetwork | |
password: ${{ secrets.SQ_DOCKERHUB_TOKEN }} | |
## node | |
- name: Get updated node version | |
id: get-node-version | |
run: | | |
sh .github/workflows/scripts/nodeVersion.sh | |
- run: yarn | |
- name: build | |
run: yarn build | |
- name: Build and push | |
if: github.event_name == 'workflow_dispatch' && github.event.inputs.isLatest == 'false' | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
platforms: arm64,amd64 | |
file: ./packages/node/Dockerfile | |
tags: subquerynetwork/subql-node-ethereum:v${{ steps.get-node-version.outputs.NODE_VERSION }} | |
build-args: RELEASE_VERSION=${{ steps.get-node-version.outputs.NODE_VERSION }} | |
- name: Build and push | |
if: github.event_name == 'release' || (github.event_name == 'workflow_dispatch' && github.event.inputs.isLatest == 'true') | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
platforms: arm64,amd64 | |
file: ./packages/node/Dockerfile | |
tags: subquerynetwork/subql-node-ethereum:v${{ steps.get-node-version.outputs.NODE_VERSION }},subquerynetwork/subql-node-ethereum:latest | |
build-args: RELEASE_VERSION=${{ steps.get-node-version.outputs.NODE_VERSION }} | |
- name: Image digest | |
run: echo ${{ steps.docker_build.outputs.digest }} | |
node-flare-build-push-docker-subquery: | |
needs: check | |
if: needs.check.outputs.changes_found == 'true' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 100 | |
token: ${{ secrets.REPO_TOKEN }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: subquerynetwork | |
password: ${{ secrets.SQ_DOCKERHUB_TOKEN }} | |
## node | |
- name: Get updated node version | |
id: get-node-version | |
run: | | |
sh .github/workflows/scripts/nodeVersion.sh | |
#Changes packages names | |
- name: Change common ethereum to flare | |
uses: jaywcjlove/github-action-package@main | |
with: | |
path: packages/common-ethereum/package.json | |
rename: '@subql/common-flare' | |
- name: Change types ethereum to flare | |
uses: jaywcjlove/github-action-package@main | |
with: | |
path: packages/types/package.json | |
rename: '@subql/types-flare' | |
- name: Change node ethereum to flare | |
uses: jaywcjlove/github-action-package@main | |
with: | |
path: packages/node/package.json | |
rename: '@subql/node-flare' | |
#update imports | |
- name: Update imports to flare | |
run: ./.github/workflows/scripts/update_flare_imports.sh | |
- run: yarn | |
- name: build | |
run: yarn build | |
- name: Debug dockerfile | |
run: cat ./packages/node/Dockerfile-flare | |
- name: Build and push flare | |
if: github.event_name == 'workflow_dispatch' && github.event.inputs.isLatest == 'false' | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
platforms: arm64,amd64 | |
file: ./packages/node/Dockerfile-flare | |
tags: subquerynetwork/subql-node-flare:v${{ steps.get-node-version.outputs.NODE_VERSION }} | |
build-args: RELEASE_VERSION=${{ steps.get-node-version.outputs.NODE_VERSION }} | |
- name: Build and push flare | |
if: github.event_name == 'release' || (github.event_name == 'workflow_dispatch' && github.event.inputs.isLatest == 'true') | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
platforms: arm64,amd64 | |
file: ./packages/node/Dockerfile-flare | |
tags: subquerynetwork/subql-node-flare:v${{ steps.get-node-version.outputs.NODE_VERSION }},subquerynetwork/subql-node-flare:latest | |
build-args: RELEASE_VERSION=${{ steps.get-node-version.outputs.NODE_VERSION }} | |
- name: Image digest | |
run: echo ${{ steps.docker_build.outputs.digest }} | |