build-release.yml: Show how this was built with the exact commands. (2) #48
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: release-zimbra | |
on: | |
push: | |
tags: | |
- builds-dev/* | |
jobs: | |
zimbra-release: | |
strategy: | |
matrix: | |
TARGET_DISTRO: [ "ubuntu-20.04" ] | |
runs-on: ubuntu-latest | |
environment: git_clone | |
steps: | |
- name: Check out the repo | |
uses: actions/checkout@v4 | |
- name: Split branch name | |
env: | |
BRANCH: ${{ github.ref_name }} | |
id: split-tag | |
run: echo "version=${BRANCH##*/}" >> $GITHUB_OUTPUT | |
- name: Prepare .ssh directory | |
run: | | |
echo "version=${BRANCH##*/}" >> $GITHUB_OUTPUT | |
mkdir ${{ github.workspace }}/.ssh | |
chmod 700 ${{ github.workspace }}/.ssh | |
echo "${{ secrets.read_only_ssh_key }}" > ${{ github.workspace }}/.ssh/id_rsa | |
chmod 600 ${{ github.workspace }}/.ssh/id_rsa | |
- name: Get runner uid | |
id: runner | |
run: | | |
echo "uid=$(id -u)" >> $GITHUB_OUTPUT | |
echo "gid=$(id -g)" >> $GITHUB_OUTPUT | |
- name: Run the build process with Docker | |
uses: addnab/docker-run-action@v3 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
image: ghcr.io/maldua/zimbra-foss-builder:latest | |
options: -v ${{ github.workspace }}:/usr/local/zimbra-foss-builder:ro -v ${{ github.workspace }}/BUILDS:/home/build/installer-build/BUILDS:rw -v ${{ github.workspace }}/.ssh:/root/.ssh:rw | |
shell: bash | |
run: | | |
chown root:root /root/.ssh/ | |
chown root:root /root/.ssh/id_rsa | |
touch /root/.ssh/known_hosts | |
ssh-keyscan github.com >> /root/.ssh/known_hosts | |
cd /home/build | |
/usr/local/zimbra-foss-builder/zimbra-smart-builder.sh ${{ steps.split-tag.outputs.version }} | |
chown -R ${{ steps.runner.outputs.uid }}:${{ steps.runner.outputs.gid }} /home/build/installer-build/BUILDS/* | |
- run: ls -la ${{ github.workspace }}/BUILDS/ | |
- name: Get tgz release filename | |
id: tgz-release | |
run: | | |
RELEASE_DIR=$(find ${{ github.workspace }}/BUILDS -name 'UBUNTU20_64*' -type d) | |
RELEASE_TGZ=$(find "${RELEASE_DIR}" -name "zcs-*.tgz" -type f) | |
RELEASE_SHORT_TGZ=$(basename ${RELEASE_TGZ}) | |
echo "directory=${RELEASE_DIR}" >> $GITHUB_OUTPUT | |
echo "filename=${RELEASE_TGZ}" >> $GITHUB_OUTPUT | |
echo "shortfilename=${RELEASE_SHORT_TGZ}" >> $GITHUB_OUTPUT | |
- name: Get zimbra-builder.sh commands | |
id: zimbra-builder | |
run: | | |
echo "commands<<EOF"$'\n'"$(cat ${{ github.workspace }}/BUILDS/zimbra-builder-commands.txt)"$'\n'EOF >> $GITHUB_OUTPUT | |
- name: Generate checksums | |
run: | | |
cd ${{ steps.tgz-release.outputs.directory }} | |
md5sum ${{ steps.tgz-release.outputs.shortfilename }} > ${{ steps.tgz-release.outputs.shortfilename }}.md5 | |
sha256sum ${{ steps.tgz-release.outputs.shortfilename }} > ${{ steps.tgz-release.outputs.shortfilename }}.sha256 | |
- name: Release | |
uses: crowbarmaster/[email protected] | |
with: | |
repo_token: ${{ github.token }} | |
prerelease: false | |
generate_notes: false | |
automatic_release_tag: zimbra-foss-build/${{ steps.split-tag.outputs.version }} | |
title: Zimbra ${{ steps.split-tag.outputs.version }} FOSS Builds | |
body: | | |
**MALDUA'S Zimbra FOSS Builds** brought to you by [BTACTIC, open source & cloud solutions](https://www.btactic.com). | |
How this was build: | |
``` | |
${{ steps.zimbra-builder.outputs.commands }} | |
``` | |
files: | | |
${{ steps.tgz-release.outputs.filename }} | |
${{ steps.tgz-release.outputs.filename }}.md5 | |
${{ steps.tgz-release.outputs.filename }}.sha256 | |