This repository has been archived by the owner on Jan 24, 2025. It is now read-only.
Merge pull request #550 from iotaledger/fix/docker-network #155
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: Feature network deploy | |
on: | |
push: | |
branches: | |
- develop | |
workflow_dispatch: | |
inputs: | |
snapshotUrl: | |
description: 'Custom snapshot URL:' | |
required: false | |
default: "" | |
jobs: | |
deploy: | |
environment: feature | |
runs-on: ubuntu-latest | |
env: | |
DOCKER_BUILDKIT: 1 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Cache Docker layers | |
uses: actions/cache@v3 | |
with: | |
path: /tmp/.buildx-cache | |
key: ${{ runner.os }}-buildx-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-buildx- | |
- name: Login to DockerHub | |
uses: docker/login-action@v2 | |
with: | |
username: '${{ secrets.IOTALEDGER_DOCKER_USERNAME }}' | |
password: '${{ secrets.IOTALEDGER_DOCKER_PASSWORD }}' | |
- name: Publish to Docker Hub | |
uses: docker/build-push-action@v3 | |
with: | |
tags: iotaledger/iota-core:feature | |
push: true | |
build-args: | | |
cache-from: type=local,src=/tmp/.buildx-cache | |
cache-to: type=local,mode=max,dest=/tmp/.buildx-cache-new | |
- uses: actions/setup-go@v4 | |
with: | |
go-version-file: 'tools/genesis-snapshot/go.mod' | |
cache: false | |
- name: Print Go version | |
run: go version | |
- name: Generate genesis snapshot | |
working-directory: tools/genesis-snapshot | |
run: go run -tags=rocksdb . --config feature --seed 7R1itJx5hVuo9w9hjg5cwKFmek4HMSoBDgJZN8hKGxih --filename genesis-snapshot.bin | |
- name: Upload snapshot | |
id: upload-snapshot | |
run: | | |
SNAPSHOT_URL=$(curl -T ./tools/genesis-snapshot/genesis-snapshot.bin https://transfer.sh) | |
echo "Snapshot URL: $SNAPSHOT_URL" | |
echo "snapshot_url=$SNAPSHOT_URL" >> $GITHUB_OUTPUT | |
- # Temp fix | |
# https://github.com/docker/build-push-action/issues/252 | |
# https://github.com/moby/buildkit/issues/1896 | |
name: Move cache | |
run: | | |
rm -rf /tmp/.buildx-cache | |
mv /tmp/.buildx-cache-new /tmp/.buildx-cache | |
- name: Install SSH Key | |
env: | |
SSH_DEPLOY_KEY: ${{ secrets.SSH_DEPLOY_KEY }} | |
run: | | |
mkdir -p ~/.ssh/ | |
echo "$SSH_DEPLOY_KEY" > ~/.ssh/id_ed25519 | |
sudo chmod 600 ~/.ssh/id_ed25519 | |
echo ' | |
Host * | |
StrictHostKeyChecking no | |
UserKnownHostsFile=/dev/null | |
' > ~/.ssh/config | |
- name: Ansible deploy | |
env: | |
CUSTOM_SNAPSHOT_URL: '${{ github.event.inputs.snapshotUrl }}' | |
DEFAULT_SNAPSHOT_URL: '${{ steps.upload-snapshot.outputs.snapshot_url }}' | |
NETWORK_ENVIRONMENT: '${{ secrets.NETWORK_ENVIRONMENT }}' | |
IOTA_CORE_DOCKER_IMAGE_REPO: 'iotaledger/iota-core' | |
IOTA_CORE_DOCKER_IMAGE_TAG: 'feature' | |
run: ./deploy/ansible/run.sh feature.yml |