Pre-merge #32
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: Pre-merge | |
on: | |
workflow_dispatch: | |
inputs: | |
branch: | |
description: 'Branch to test' | |
required: true | |
pull_request: | |
paths: | |
- scripts/cnode-helper-scripts/guild-deploy.sh | |
- scripts/cnode-helper-scripts/cabal-build-all.sh | |
- files/tests/pre-merge/debian-guild-deploy.sh-l.containerfile | |
jobs: | |
guild-deploy-and-build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
distro: [rockylinux, ubuntu] | |
env: | |
REGISTRY: ghcr.io | |
BRANCH: ${{ github.event.inputs.branch || '' }} | |
if: github.event.pull_request.draft == false | |
steps: | |
- name: Maximize build space | |
uses: easimon/maximize-build-space@master | |
with: | |
root-reserve-mb: 512 | |
swap-size-mb: 1024 | |
remove-dotnet: 'true' | |
remove-android: 'true' | |
remove-haskell: ' true' | |
- name: Login to GitHub Container Registry | |
uses: docker/login-action@v2 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- uses: actions/checkout@v3 | |
- name: Define BRANCH, COMMIT and G_ACCOUNT in environment | |
run: | | |
echo "G_ACCOUNT=${GITHUB_REPOSITORY_OWNER,,}" >> $GITHUB_ENV | |
if [[ -z "${{ env.BRANCH }}" ]]; then | |
echo "BRANCH=${GITHUB_HEAD_REF}" >> $GITHUB_ENV | |
echo "COMMIT=$(git rev-parse --short "$GITHUB_SHA")" >> $GITHUB_ENV | |
else | |
echo "COMMIT=$(git rev-parse --short ${{ env.BRANCH }})" >> $GITHUB_ENV | |
fi | |
- name: Testing guild-deploy.sh (IO fork of libsodium) | |
run: | | |
docker build . \ | |
--file files/tests/pre-merge/${{ matrix.distro }}-guild-deploy.sh-l.containerfile \ | |
--compress \ | |
--build-arg BRANCH=${{ env.BRANCH }} \ | |
--build-arg COMMIT=${{ env.COMMIT }} \ | |
--build-arg G_ACCOUNT=${{ env.G_ACCOUNT }} \ | |
--tag ${{ env.REGISTRY }}/${{ env.G_ACCOUNT }}/pre-merge-${{ matrix.distro }}:guild-deploy-l_${{ env.COMMIT }} | |
- name: Get Image ID | |
run: | | |
PREMERGE_IMAGE_ID1=$(docker inspect ${{ env.REGISTRY }}/${{ env.G_ACCOUNT }}/pre-merge-${{ matrix.distro }}:guild-deploy-l_${{ env.COMMIT }} --format='{{.Id}}') | |
echo "PREMERGE_IMAGE_ID1=${PREMERGE_IMAGE_ID1}" >> $GITHUB_ENV | |
- name: Push pre-merge-${{ matrix.distro }}:guild-deploy-l_${{ env.COMMIT }} | |
run: | | |
docker push ${{ env.REGISTRY }}/${{ env.G_ACCOUNT }}/pre-merge-${{ matrix.distro }}:guild-deploy-l_${{ env.COMMIT }} | |
- name: Testing cabal-build-all.sh (IO fork of libsodium) | |
run: | | |
echo "Working from PR Branch ${{ env.G_ACCOUNT }}/guild-operators/${{ env.BRANCH }} on Commit ${{ env.COMMIT }}" | |
docker build . \ | |
--file files/tests/pre-merge/${{ matrix.distro }}-cabal-l.containerfile \ | |
--compress \ | |
--build-arg BRANCH=${{ env.BRANCH }} \ | |
--build-arg COMMIT=${{ env.COMMIT }} \ | |
--build-arg G_ACCOUNT=${{ env.G_ACCOUNT }} \ | |
--tag ${{ env.REGISTRY }}/${{ env.G_ACCOUNT }}/pre-merge-${{ matrix.distro }}:cabal-l_${{ env.COMMIT }} | |
- name: Get Versions and Image ID | |
run: | | |
VERSION_DETAILS=($(docker run --rm ${{ env.REGISTRY }}/${{ env.G_ACCOUNT }}/pre-merge-${{ matrix.distro }}:cabal-l_${{ env.COMMIT }} cardano-node --version | awk '/^cardano-node/')) | |
PREMERGE_IMAGE_ID2=$(docker inspect ${{ env.REGISTRY }}/${{ env.G_ACCOUNT }}/pre-merge-${{ matrix.distro }}:cabal-l_${{ env.COMMIT }} --format='{{.Id}}') | |
echo "CARDANO_NODE_VERSION=${VERSION_DETAILS[1]}" >> $GITHUB_ENV | |
echo "GHC_VERSION=${VERSION_DETAILS[5]}" >> $GITHUB_ENV | |
echo "PREMERGE_IMAGE_ID2=${PREMERGE_IMAGE_ID2}" >> $GITHUB_ENV | |
- name: Push pre-merge-${{ matrix.distro }}:cabal-l_${{ env.COMMIT }} | |
run: | | |
docker push ${{ env.REGISTRY }}/${{ env.G_ACCOUNT }}/pre-merge-${{ matrix.distro }}:cabal-l_${{ env.COMMIT }} | |
- name: Add summary details | |
if: always() | |
run: | | |
echo "## Pre-Merge Summary Details" >> $GITHUB_STEP_SUMMARY | |
echo "| Name | Value |" >> $GITHUB_STEP_SUMMARY | |
echo "| ---- | ----- |" >> $GITHUB_STEP_SUMMARY | |
echo "| Guild Deploy Image | ${{ env.REGISTRY }}/${{ env.G_ACCOUNT }}/pre-merge-${{ matrix.distro }}:guild-deploy-l_${{ env.COMMIT }} |" >> $GITHUB_STEP_SUMMARY | |
echo "| Guild Deploy Image ID | ${{ env.PREMERGE_IMAGE_ID1 }} |" >> $GITHUB_STEP_SUMMARY | |
echo "| Cabal Build Image | ${{ env.REGISTRY }}/${{ env.G_ACCOUNT }}/pre-merge-${{ matrix.distro }}:cabal-l_${{ env.COMMIT }} |" >> $GITHUB_STEP_SUMMARY | |
echo "| Cabal Build Image ID | ${{ env.PREMERGE_IMAGE_ID2 }} |" >> $GITHUB_STEP_SUMMARY | |
echo "| G_ACCOUNT | ${{ env.G_ACCOUNT }} |" >> $GITHUB_STEP_SUMMARY | |
echo "| BRANCH | ${{ env.BRANCH }} |" >> $GITHUB_STEP_SUMMARY | |
echo "| COMMIT | ${{ env.COMMIT }} |" >> $GITHUB_STEP_SUMMARY | |
echo "| CARDANO_NODE_VERSION | ${{ env.CARDANO_NODE_VERSION }} |" >> $GITHUB_STEP_SUMMARY | |
echo "| GHC_VERSION | ${{ env.GHC_VERSION }} |" >> $GITHUB_STEP_SUMMARY |