laconicd-stacks/.gitea/workflows/publish-mainnet-laconicd-images.yml

48 lines
1.9 KiB
YAML
Raw Normal View History

name: Publish Laconicd Mainnet Stack Container Images
# Note: images in this stack have the same name as images in the fixturenet stack
# beware that at present they are not distinguished. So publishing a new version
# of one of those images will lead to it being consumed by the other stack.
on:
push:
branches: 'main'
paths:
- '!**'
- '.gitea/workflows/triggers/publish-mainnet-laconicd-images'
- '.gitea/workflows/publish-mainnet-laconicd-images.yml'
jobs:
publish:
name: "Publish Laconicd Mainnet Stack Container Images"
runs-on: ubuntu-latest
steps:
- name: "Clone project repository"
uses: actions/checkout@v3
# At present the stock setup-python action fails on Linux/aarch64
# Conditional steps below workaroud this by using deadsnakes for that case only
- name: "Install Python for ARM on Linux"
if: ${{ runner.arch == 'arm64' && runner.os == 'Linux' }}
uses: deadsnakes/action@v3.0.1
with:
python-version: '3.8'
- name: "Install Python cases other than ARM on Linux"
if: ${{ ! (runner.arch == 'arm64' && runner.os == 'Linux') }}
uses: actions/setup-python@v4
with:
python-version: '3.8'
- name: "Print Python version"
run: python3 --version
- name: "Install stack orchestrator"
run: ./scripts/install-so.sh
- name: "Build containers"
run: |
PATH=$PATH:~/bin
laconic-so --quiet --stack mainnet-laconic setup-repositories
laconic-so --stack mainnet-laconic build-containers
- name: "Publish container images"
run: |
PATH=$PATH:~/bin
echo ${{ secrets.CICD_PUBLISH_TOKEN }} | docker login git.vdb.to -u cerccicd --password-stdin
laconic-so --stack mainnet-laconic build-containers --publish-images --image-registry git.vdb.to/cerc-io