Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(gorgone): package last version of libzmq #1115

Merged
2 changes: 1 addition & 1 deletion .github/actions/delivery/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ runs:

- name: Build name for DEB
shell: bash
if: ${{ contains(fromJSON('["bullseye", "bookworm", "jammy"]' , inputs.distrib) }}
if: ${{ contains(fromJSON('["bullseye", "bookworm", "jammy"]'), inputs.distrib) }}
run: |
echo "extfile=deb" >> $GITHUB_ENV

Expand Down
2 changes: 1 addition & 1 deletion .github/actions/promote-to-stable/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ runs:
shell: bash

- name: Promote DEB packages to stable
if: ${{ contains(fromJSON('["bullseye", "bookworm"]' , inputs.distrib) }}
if: ${{ contains(fromJSON('["bullseye", "bookworm"]'), inputs.distrib) }}
run: |
echo "[DEBUG] - Major version: ${{ inputs.major_version }}"
echo "[DEBUG] - Minor version: ${{ inputs.minor_version }}"
Expand Down
207 changes: 207 additions & 0 deletions .github/workflows/zmq-lib.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,207 @@
name: libzmq
tuntoja marked this conversation as resolved.
Show resolved Hide resolved

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

on:
workflow_dispatch:
pull_request:
paths:
- '.github/workflows/zmq-lib.yml'
push:
branches:
- develop
- dev-[2-9][0-9].[0-9][0-9].x
- master
- "[2-9][0-9].[0-9][0-9].x"
paths:
- '.github/workflows/zmq-lib.yml'

jobs:
get-version:
uses: ./.github/workflows/get-version.yml

package-rpm:
needs: [get-version]

strategy:
fail-fast: false
matrix:
include:
- image: packaging-alma8
distrib: el8
arch: amd64
- image: packaging-alma9
distrib: el9
arch: amd64

runs-on: ubuntu-22.04

container:
image: ${{ vars.DOCKER_INTERNAL_REGISTRY_URL }}/${{ matrix.image }}:${{ needs.get-version.outputs.version }}
credentials:
username: ${{ secrets.DOCKER_REGISTRY_ID }}
password: ${{ secrets.DOCKER_REGISTRY_PASSWD }}

name: package ${{ matrix.distrib }}

steps:
- name: package rpm
run: |
dnf install -y wget rpmdevtools rpmlint epel-release
dnf config-manager --set-enabled crb || true # alma 9
dnf config-manager --set-enabled powertools || true # alma 8
dnf install -y asciidoc autoconf automake gcc gcc-c++ glib2-devel libbsd-devel libtool make xmlto
cd /github/home
wget -O - https://github.com/zeromq/libzmq/archive/refs/tags/v4.3.5.tar.gz|tar zxvf -
mkdir -p /github/home/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
cp libzmq-4.3.5/packaging/redhat/zeromq.spec /github/home/rpmbuild/SPECS/
wget https://github.com/zeromq/libzmq/releases/download/v4.3.5/zeromq-4.3.5.tar.gz -O /github/home/rpmbuild/SOURCES/zeromq-4.3.5.tar.gz
rpmbuild -bb /github/home/rpmbuild/SPECS/zeromq.spec
cd -
mv /github/home/rpmbuild/RPMS/x86_64/*.rpm ./
shell: bash

- name: cache rpm
uses: actions/cache/save@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: ./*.rpm
key: ${{ github.run_id }}-${{ github.sha }}-rpm-libzmq-${{ matrix.distrib }}-${{ matrix.arch }}-${{ github.head_ref || github.ref_name }}
sdepassio marked this conversation as resolved.
Show resolved Hide resolved

package-deb:
needs: [get-version]

strategy:
fail-fast: false
matrix:
include:
- image: packaging-bullseye
distrib: bullseye
runner: ubuntu-22.04
arch: amd64
- image: packaging-bookworm
distrib: bookworm
runner: ubuntu-22.04
arch: amd64
- image: packaging-nfpm-jammy
distrib: jammy
runner: ubuntu-22.04
arch: amd64
- image: packaging-bullseye-arm64
distrib: bullseye
runner: ["self-hosted", "collect-arm64"]
arch: arm64

runs-on: ${{ matrix.runner }}

container:
image: ${{ vars.DOCKER_INTERNAL_REGISTRY_URL }}/${{ matrix.image }}:${{ needs.get-version.outputs.version }}
credentials:
username: ${{ secrets.DOCKER_REGISTRY_ID }}
password: ${{ secrets.DOCKER_REGISTRY_PASSWD }}

name: package ${{ matrix.distrib }} ${{ matrix.arch }}

steps:
- name: package deb
run: |
apt-get update
apt-get install -y dpkg-dev wget
sdepassio marked this conversation as resolved.
Show resolved Hide resolved
apt-get install -y debhelper dh-autoreconf libkrb5-dev libnorm-dev libpgm-dev libsodium-dev libunwind8-dev libnss3-dev libgnutls28-dev libbsd-dev pkg-config asciidoc xmlto
wget -O - https://github.com/zeromq/libzmq/releases/download/v4.3.5/zeromq-4.3.5.tar.gz|tar zxvf -
cd zeromq-4.3.5
./configure
make
make install
cd ..
wget -O - https://github.com/zeromq/libzmq/archive/refs/tags/v4.3.5.tar.gz|tar zxvf -
cd libzmq-4.3.5
apt-get install -y debhelper dh-autoreconf libkrb5-dev libnorm-dev libpgm-dev libsodium-dev libunwind8-dev libnss3-dev libgnutls28-dev libbsd-dev pkg-config asciidoc xmlto
ln -s packaging/debian
dpkg-buildpackage -us -uc -nc
cd ..
shell: bash

- name: cache deb
uses: actions/cache/save@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: ./*.deb
key: ${{ github.run_id }}-${{ github.sha }}-deb-libzmq-${{ matrix.distrib }}-${{ matrix.arch }}-${{ github.head_ref || github.ref_name }}
sdepassio marked this conversation as resolved.
Show resolved Hide resolved

deliver-rpm:
if: ${{ contains(fromJson('["testing", "unstable"]'), needs.get-version.outputs.stability) }}
needs: [get-version, package-rpm]
environment: ${{ needs.get-version.outputs.environment }}
runs-on: [self-hosted, common]
strategy:
matrix:
include:
- distrib: el8
arch: amd64
- distrib: el9
arch: amd64

name: deliver ${{ matrix.distrib }}

steps:
- name: Publish RPM packages
uses: ./.github/actions/delivery
with:
module_name: libzmq
distrib: ${{ matrix.distrib }}
version: ${{ needs.get-version.outputs.version }}
artifactory_token: ${{ secrets.ARTIFACTORY_ACCESS_TOKEN }}
cache_key: ${{ github.run_id }}-${{ github.sha }}-rpm-libzmq-${{ matrix.distrib }}-${{ matrix.arch }}-${{ github.head_ref || github.ref_name }}
sdepassio marked this conversation as resolved.
Show resolved Hide resolved
stability: ${{ needs.get-version.outputs.stability }}

deliver-deb:
if: ${{ contains(fromJson('["testing", "unstable"]'), needs.get-version.outputs.stability) }}
needs: [get-version, package-deb]
environment: ${{ needs.get-version.outputs.environment }}
runs-on: [self-hosted, common]
strategy:
matrix:
include:
- distrib: bullseye
arch: amd64
- distrib: bullseye
arch: arm64
- distrib: bookworm
arch: amd64
- distrib: jammy
arch: amd64

name: deliver ${{ matrix.distrib }}

steps:
- name: Publish DEB packages
uses: ./.github/actions/delivery
with:
module_name: libzmq
distrib: ${{ matrix.distrib }}
version: ${{ needs.get-version.outputs.version }}
artifactory_token: ${{ secrets.ARTIFACTORY_ACCESS_TOKEN }}
cache_key: ${{ github.run_id }}-${{ github.sha }}-deb-libzmq-${{ matrix.distrib }}-${{ matrix.arch }}-${{ github.head_ref || github.ref_name }}
sdepassio marked this conversation as resolved.
Show resolved Hide resolved
stability: ${{ needs.get-version.outputs.stability }}

promote:
needs: [get-version]
if: ${{ contains(fromJson('["stable"]'), needs.get-version.outputs.stability) && github.event_name != 'workflow_dispatch' }}
runs-on: [self-hosted, common]
strategy:
matrix:
distrib: [el8, el9, bullseye, bookworm, jammy]
sc979 marked this conversation as resolved.
Show resolved Hide resolved

steps:
- name: Promote ${{ matrix.distrib }} to stable
uses: ./.github/actions/promote-to-stable
with:
artifactory_token: ${{ secrets.ARTIFACTORY_ACCESS_TOKEN }}
module_name: libzmq
distrib: ${{ matrix.distrib }}
major_version: ${{ needs.get-version.outputs.version }}
minor_version: ${{ needs.get-version.outputs.patch }}
stability: ${{ needs.get-version.outputs.stability }}
repository_name: standard
github_base_ref: ${{ github.base_ref }}