Skip to content

Build Docker And Deploy Seed #356

Build Docker And Deploy Seed

Build Docker And Deploy Seed #356

Workflow file for this run

name: Build Docker And Deploy Seed
on:
push:
branches:
- main
workflow_dispatch:
release:
types: [ published ]
jobs:
build-rooch-docker:
name: build rooch docker
# runs-on: self-hosted
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v1
with:
submodules: recursive
# - name: Docker meta
# id: docker_meta
# uses: crazy-max/ghaction-docker-meta@v1
# with:
# # images: rooch/rooch,ghcr.io/rooch-network/rooch
# images: ghcr.io/rooch-network/rooch
# tag-sha: true # add git short SHA as Docker tag
# # -
# # name: Set up QEMU
# # uses: docker/setup-qemu-action@v1
# - name: Set up Docker Buildx
# uses: docker/setup-buildx-action@v2
# with:
# driver: docker
# # - name: Login to DockerHub
# # uses: docker/login-action@v1
# # with:
# # username: ${{ secrets.DOCKERHUB_USERNAME }}
# # password: ${{ secrets.DOCKERHUB_TOKEN }}
# - name: Login to GitHub Container Registry
# uses: docker/login-action@v1
# with:
# registry: ghcr.io
# username: ${{ github.actor }}
# password: ${{ secrets.GIT_PACKAGE_TOKEN }}
# - name: Build and push
# uses: docker/build-push-action@v2
# with:
# context: .
# file: docker/Dockerfile
# push: true
# tags: ${{ steps.docker_meta.outputs.tags }}
# labels: ${{ steps.docker_meta.outputs.labels }}
- name: Deploy to GCP VM
env:
PRIVATE_KEY: ${{ secrets.GCP_SSH_PRIVATE_KEY }}
HOST: ${{ secrets.GCP_VM_HOST }}
USER: ${{ secrets.GCP_VM_USER }}
DEV_MNEMONIC_PHRASE: ${{secrets.DEV_MNEMONIC_PHRASE}}
IMAGE_TAG: ${{ steps.docker_meta.outputs.version }}
# run: |
# echo "$PRIVATE_KEY" > private_key.pem
# chmod 600 private_key.pem
# ssh -o StrictHostKeyChecking=no -i private_key.pem $USER@$HOST bash -c "'sleep 30' && docker ps | grep rooch | awk '{print \$1}' | xargs -r docker stop && docker ps -a | grep rooch | awk '{print \$1}' | xargs -r docker rm -f && docker pull 'ghcr.io/rooch-network/rooch:${{ steps.docker_meta.outputs.version }}' && docker run -d -v /root:/root -p 50051:50051 'ghcr.io/rooch-network/rooch:${{ steps.docker_meta.outputs.version }}' server start -n dev --eth-rpc-url https://goerli.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161"
# ssh -o StrictHostKeyChecking=no -i private_key.pem $USER@$HOST "cd /root/rooch && git pull origin main && bash scripts/check_dev_deploy_status.sh"
run: |
echo "$PRIVATE_KEY" > private_key.pem
chmod 600 private_key.pem
ssh -o StrictHostKeyChecking=no -i private_key.pem $USER@$HOST "echo "Start cleaning the data." && docker run -v --rm /root:/root ghcr.io/rooch-network/rooch:main server clean -n dev && rm -rf ~/.rooch && docker run -v --rm /root:/root ghcr.io/rooch-network/rooch:main init -m "$(echo $DEV_MNEMONIC_PHRASE)" --skip-password"