548 lines
19 KiB
YAML
548 lines
19 KiB
YAML
name: perl-cpan-libraries
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
|
|
cancel-in-progress: true
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
pull_request:
|
|
paths:
|
|
- ".github/workflows/perl-cpan-libraries.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/perl-cpan-libraries.yml"
|
|
|
|
jobs:
|
|
get-environment:
|
|
uses: ./.github/workflows/get-environment.yml
|
|
|
|
package-rpm:
|
|
needs: [get-environment]
|
|
if: ${{ needs.get-environment.outputs.stability != 'stable' }}
|
|
|
|
runs-on: ubuntu-22.04
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
distrib: [el8, el9]
|
|
name:
|
|
[
|
|
"ARGV::Struct",
|
|
"Authen::SASL::SASLprep",
|
|
"Authen::SCRAM::Client",
|
|
"boolean",
|
|
"BSON",
|
|
"BSON::XS",
|
|
"Carp::Assert",
|
|
"Clone",
|
|
"Clone::Choose",
|
|
"common::sense",
|
|
"Config::AWS",
|
|
"Convert::Binary::C",
|
|
"Convert::EBCDIC",
|
|
"Crypt::Blowfish_PP",
|
|
"DataStruct::Flat",
|
|
"DateTime::Format::Duration::ISO8601",
|
|
"DBD::Sybase",
|
|
"Device::Modbus",
|
|
"Device::Modbus::RTU::Client",
|
|
"Device::Modbus::TCP::Client",
|
|
"Digest::MD5::File",
|
|
"Digest::SHA1",
|
|
"Email::Send::SMTP::Gmail",
|
|
"Exporter::Shiny",
|
|
"EV",
|
|
"FFI::CheckLib",
|
|
"FFI::Platypus",
|
|
"File::SearchPath",
|
|
"Hash::Merge",
|
|
"Hash::Ordered",
|
|
"HTTP::Daemon",
|
|
"HTTP::Daemon::SSL",
|
|
"HTTP::ProxyPAC",
|
|
"JMX::Jmx4Perl",
|
|
"JSON::Parse",
|
|
"JSON::WebToken",
|
|
"LV",
|
|
"MIME::Types",
|
|
"Mojo::IOLoop::Signal",
|
|
"MongoDB",
|
|
"MooseX::ClassAttribute",
|
|
"Net::Amazon::Signature::V4",
|
|
"Net::DHCP",
|
|
"Net::FTPSSL",
|
|
"Net::HTTPTunnel",
|
|
"Net::MQTT::Simple",
|
|
"Net::NTP",
|
|
"Net::SMTPS",
|
|
"Net::SMTP_auth",
|
|
"Net::Subnet",
|
|
"Net::TFTP",
|
|
"Paws",
|
|
"PBKDF2::Tiny",
|
|
"Schedule::Cron",
|
|
"Statistics::Descriptive",
|
|
"Statistics::Regression",
|
|
"Sys::SigAction",
|
|
"Term::Clui",
|
|
"Term::ShellUI",
|
|
"Unicode::Stringprep",
|
|
"URI::Encode",
|
|
"URI::Template",
|
|
"URL::Encode",
|
|
"URL::Encode::XS",
|
|
"UUID",
|
|
"UUID::URandom",
|
|
"WWW::Selenium",
|
|
"XML::Filter::BufferText",
|
|
"XML::LibXML::Simple",
|
|
"XML::SAX::Writer",
|
|
"ZMQ::Constants",
|
|
"ZMQ::FFI",
|
|
"ZMQ::LibZMQ4"
|
|
]
|
|
include:
|
|
- build_distribs: "el8,el9"
|
|
- rpm_dependencies: ""
|
|
- rpm_provides: ""
|
|
- version: ""
|
|
- spec_file: ""
|
|
- distrib: el8
|
|
package_extension: rpm
|
|
image: packaging-plugins-alma8
|
|
- distrib: el9
|
|
package_extension: rpm
|
|
image: packaging-plugins-alma9
|
|
- name: "BSON"
|
|
rpm_provides: "perl(BSON::Bytes) perl(BSON::Code) perl(BSON::DBRef) perl(BSON::OID) perl(BSON::Raw) perl(BSON::Regex) perl(BSON::Time) perl(BSON::Timestamp) perl(BSON::Types) perl(BSON)"
|
|
- name: "DateTime::Format::Duration::ISO8601"
|
|
rpm_provides: "perl(DateTime-Format-Duration-ISO8601)"
|
|
- name: "Device::Modbus::RTU::Client"
|
|
version: "0.022"
|
|
- name: "Device::Modbus::TCP::Client"
|
|
version: "0.026"
|
|
- name: "Exporter::Shiny"
|
|
build_distribs: el8
|
|
rpm_provides: "perl(Exporter::Shiny) perl(Exporter::Tiny)"
|
|
- name: "FFI::Platypus"
|
|
rpm_provides: "perl(FFI::Platypus::Buffer) perl(FFI::Platypus::Memory)"
|
|
- name: "Net::DHCP"
|
|
rpm_provides: "perl(Net::DHCP::Constants) perl(Net::DHCP::Packet)"
|
|
- name: "Statistics::Regression"
|
|
version: "0.53"
|
|
- name: "URL::Encode::XS"
|
|
build_distribs: el9
|
|
- name: "UUID"
|
|
version: "0.31"
|
|
- name: "ZMQ::Constants"
|
|
build_distribs: "el9"
|
|
- name: "ZMQ::FFI"
|
|
rpm_dependencies: "zeromq"
|
|
- name: "ZMQ::LibZMQ4"
|
|
version: "0.01"
|
|
rpm_dependencies: "zeromq"
|
|
- name: "Mojo::IOLoop::Signal"
|
|
rpm_dependencies: "perl-Mojolicious"
|
|
rpm_provides: "perl(Mojo::IOLoop::Signal)"
|
|
no-auto-depends: true
|
|
|
|
|
|
name: package ${{ matrix.distrib }} ${{ matrix.name }}
|
|
container:
|
|
image: ${{ vars.DOCKER_INTERNAL_REGISTRY_URL }}/${{ matrix.image }}:latest
|
|
credentials:
|
|
username: ${{ secrets.DOCKER_REGISTRY_ID }}
|
|
password: ${{ secrets.DOCKER_REGISTRY_PASSWD }}
|
|
|
|
steps:
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) }}
|
|
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) }}
|
|
run: |
|
|
yum install -y yum-utils epel-release git
|
|
yum config-manager --set-enabled crb || true # alma 9
|
|
yum config-manager --set-enabled powertools || true # alma 8
|
|
yum install -y cpanminus rpm-build libcurl-devel libssh-devel expat-devel gcc libuuid-devel zeromq-devel libxml2-devel libffi-devel perl-DBI perl-Net-Pcap freetds freetds-devel perl-Module-Build-Tiny
|
|
|
|
dnf module reset -y ruby
|
|
dnf module enable -y ruby:3.1
|
|
dnf install -y ruby ruby-devel
|
|
shell: bash
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) && matrix.spec_file == '' }}
|
|
run: |
|
|
if [ -z "${{ matrix.version }}" ]; then
|
|
PACKAGE_VERSION=""
|
|
else
|
|
PACKAGE_VERSION=" -v ${{ matrix.version }}"
|
|
fi
|
|
|
|
if [ -z "${{ matrix.rpm_dependencies }}" ]; then
|
|
PACKAGE_DEPENDENCIES=""
|
|
else
|
|
for PACKAGE_DEPENDENCY in `echo ${{ matrix.rpm_dependencies }}`; do
|
|
PACKAGE_DEPENDENCIES="$PACKAGE_DEPENDENCIES --depends $PACKAGE_DEPENDENCY"
|
|
done
|
|
fi
|
|
|
|
if [ ! -z "${{ matrix.no-auto-depends }}" ]; then
|
|
PACKAGE_DEPENDENCIES="$PACKAGE_DEPENDENCIES --no-auto-depends"
|
|
fi
|
|
|
|
if [ -z "${{ matrix.rpm_provides }}" ]; then
|
|
PACKAGE_PROVIDES=""
|
|
else
|
|
for PACKAGE_PROVIDE in `echo "${{ matrix.rpm_provides }}"`; do
|
|
PACKAGE_PROVIDES="$PACKAGE_PROVIDES --provides $PACKAGE_PROVIDE"
|
|
done
|
|
fi
|
|
|
|
cpanm Module::Build::Tiny
|
|
cpanm Module::Install
|
|
|
|
export SYBASE="/usr"
|
|
|
|
gem install fpm
|
|
fpm -s cpan -t ${{ matrix.package_extension }} --rpm-dist ${{ matrix.distrib }} --verbose --cpan-verbose --no-cpan-test$PACKAGE_DEPENDENCIES$PACKAGE_PROVIDES$PACKAGE_VERSION ${{ matrix.name }}
|
|
shell: bash
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) && matrix.spec_file != '' }}
|
|
run: |
|
|
mkdir -p ~/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
|
|
|
|
rpmbuild --undefine=_disable_source_fetch -ba ${{ matrix.spec_file }}
|
|
|
|
cp -r ~/rpmbuild/RPMS/noarch/*.rpm .
|
|
shell: bash
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) }}
|
|
name: Replace '::' with - in the feature path
|
|
id: package-name
|
|
run: |
|
|
name="${{ matrix.name }}"
|
|
name_with_dash="${name//::/-}"
|
|
echo "Modified Name: $name_with_dash"
|
|
echo "name_with_dash=$name_with_dash" >> $GITHUB_OUTPUT
|
|
shell: bash
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) }}
|
|
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
|
with:
|
|
name: packages-${{ matrix.package_extension }}-${{ matrix.distrib }}-${{ steps.package-name.outputs.name_with_dash }}
|
|
path: ./*.${{ matrix.package_extension }}
|
|
retention-days: 1
|
|
|
|
merge-package-rpm-artifacts:
|
|
needs: [package-rpm]
|
|
runs-on: ubuntu-22.04
|
|
strategy:
|
|
matrix:
|
|
distrib: [el8, el9]
|
|
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
|
|
- name: Merging Artifacts
|
|
uses: ./.github/actions/merge-artifacts
|
|
with:
|
|
target_name: packages-rpm-${{ matrix.distrib }}
|
|
source_paths: packages-rpm-${{ matrix.distrib }}/*.rpm
|
|
source_name_pattern: packages-rpm-${{ matrix.distrib }}-
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
sign-rpm:
|
|
needs: [merge-package-rpm-artifacts]
|
|
|
|
runs-on: ubuntu-22.04
|
|
strategy:
|
|
matrix:
|
|
distrib: [el8, el9]
|
|
name: sign rpm ${{ matrix.distrib }}
|
|
container:
|
|
image: ${{ vars.DOCKER_INTERNAL_REGISTRY_URL }}/rpm-signing:ubuntu
|
|
options: -t
|
|
credentials:
|
|
username: ${{ secrets.DOCKER_REGISTRY_ID }}
|
|
password: ${{ secrets.DOCKER_REGISTRY_PASSWD }}
|
|
|
|
steps:
|
|
- run: apt-get install -y zstd
|
|
shell: bash
|
|
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
|
|
- uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
|
with:
|
|
name: packages-rpm-${{ matrix.distrib }}
|
|
path: ./
|
|
|
|
- run: echo "HOME=/root" >> $GITHUB_ENV
|
|
shell: bash
|
|
|
|
- run: rpmsign --addsign ./*.rpm
|
|
shell: bash
|
|
|
|
- uses: actions/cache/save@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
|
with:
|
|
path: ./*.rpm
|
|
key: ${{ github.sha }}-${{ github.run_id }}-rpm-${{ matrix.distrib }}
|
|
|
|
deliver-rpm:
|
|
needs: [get-environment, sign-rpm]
|
|
if: ${{ contains(fromJson('["testing", "unstable"]'), needs.get-environment.outputs.stability) }}
|
|
runs-on: [self-hosted, common]
|
|
|
|
strategy:
|
|
matrix:
|
|
distrib: [el8, el9]
|
|
|
|
steps:
|
|
- name: Checkout sources
|
|
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
|
|
- name: Delivery
|
|
uses: ./.github/actions/rpm-delivery
|
|
with:
|
|
module_name: perl-cpan-libraries
|
|
distrib: ${{ matrix.distrib }}
|
|
artifactory_token: ${{ secrets.ARTIFACTORY_ACCESS_TOKEN }}
|
|
cache_key: ${{ github.sha }}-${{ github.run_id }}-rpm-${{ matrix.distrib }}
|
|
stability: ${{ needs.get-environment.outputs.stability }}
|
|
|
|
package-deb:
|
|
needs: [get-environment]
|
|
if: ${{ needs.get-environment.outputs.stability != 'stable' }}
|
|
|
|
runs-on: ${{ matrix.runner_name }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
image: [packaging-plugins-bullseye, packaging-plugins-bookworm, packaging-plugins-jammy, packaging-plugins-bullseye-arm64]
|
|
name:
|
|
[
|
|
"ARGV::Struct",
|
|
"Authen::SCRAM::Client",
|
|
"Config::AWS",
|
|
"Convert::EBCDIC",
|
|
"Crypt::Blowfish_PP",
|
|
"DataStruct::Flat",
|
|
"DateTime::Format::Duration::ISO8601",
|
|
"Device::Modbus",
|
|
"Digest::SHA1",
|
|
"Email::Send::SMTP::Gmail",
|
|
"Hash::Ordered",
|
|
"HTTP::ProxyPAC",
|
|
"JMX::Jmx4Perl",
|
|
"Mojo::IOLoop::Signal",
|
|
"Net::FTPSSL",
|
|
"Net::HTTPTunnel",
|
|
"Net::MQTT::Simple",
|
|
"Net::SMTP_auth",
|
|
"Paws",
|
|
"Statistics::Regression",
|
|
"WWW::Selenium",
|
|
"ZMQ::Constants",
|
|
"ZMQ::LibZMQ4"
|
|
]
|
|
include:
|
|
- runner_name: ubuntu-22.04
|
|
- arch: amd64
|
|
- build_distribs: "bullseye,bookworm,jammy"
|
|
- deb_dependencies: ""
|
|
- rpm_provides: ""
|
|
- version: ""
|
|
- use_dh_make_perl: "true"
|
|
- spec_file: ""
|
|
- distrib: bullseye
|
|
package_extension: deb
|
|
image: packaging-plugins-bullseye
|
|
- distrib: bookworm
|
|
package_extension: deb
|
|
image: packaging-plugins-bookworm
|
|
- distrib: jammy
|
|
package_extension: deb
|
|
image: packaging-plugins-jammy
|
|
- distrib: bullseye
|
|
package_extension: deb
|
|
image: packaging-plugins-bullseye-arm64
|
|
arch: arm64
|
|
runner_name: ["self-hosted", "collect-arm64"]
|
|
- name: "Paws"
|
|
use_dh_make_perl: "false"
|
|
deb_dependencies: "libmoose-perl libmoosex-classattribute-perl libjson-maybexs-perl liburl-encode-perl libargv-struct-perl libmoo-perl libtype-tiny-perl libdatastruct-flat-perl libmodule-find-perl libthrowable-perl liburi-template-perl libnet-amazon-signature-v4-perl"
|
|
no-auto-depends: true
|
|
- name: "Statistics::Regression"
|
|
build_distribs: "bullseye"
|
|
version: "0.53"
|
|
- name: "ZMQ::LibZMQ4"
|
|
use_dh_make_perl: "false"
|
|
version: "0.01"
|
|
deb_dependencies: "libzmq5"
|
|
name: package ${{ matrix.distrib }} ${{ matrix.arch }} ${{ matrix.name }}
|
|
container:
|
|
image: ${{ vars.DOCKER_INTERNAL_REGISTRY_URL }}/${{ matrix.image }}:latest
|
|
credentials:
|
|
username: ${{ secrets.DOCKER_REGISTRY_ID }}
|
|
password: ${{ secrets.DOCKER_REGISTRY_PASSWD }}
|
|
|
|
steps:
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) }}
|
|
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) }}
|
|
name: Get package version
|
|
id: package-version
|
|
run: |
|
|
apt-get update
|
|
apt-get install -y cpanminus
|
|
|
|
if [ -z "${{ matrix.version }}" ]; then
|
|
CPAN_PACKAGE_VERSION=$(cpanm --info ${{ matrix.name }} | sed 's/\.tar\.gz$//' | sed 's/.*\-//' | sed 's/v//')
|
|
|
|
if [[ ! $CPAN_PACKAGE_VERSION =~ ^[0-9]+\.[0-9]+ ]]; then
|
|
echo "::error::Invalid version number: ${CPAN_PACKAGE_VERSION}"
|
|
exit 1
|
|
fi
|
|
|
|
PACKAGE_VERSION="${CPAN_PACKAGE_VERSION}"
|
|
else
|
|
PACKAGE_VERSION="${{ matrix.version }}"
|
|
fi
|
|
|
|
echo "package_version=$(echo $PACKAGE_VERSION)" >> $GITHUB_OUTPUT
|
|
shell: bash
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) && matrix.use_dh_make_perl == 'false' }}
|
|
run: |
|
|
apt-get install -y ruby libcurl4-openssl-dev libssh-dev uuid-dev libczmq-dev
|
|
|
|
if [ -z "${{ matrix.deb_dependencies }}" ]; then
|
|
PACKAGE_DEPENDENCIES=""
|
|
else
|
|
for PACKAGE_DEPENDENCY in `echo ${{ matrix.deb_dependencies }}`; do
|
|
PACKAGE_DEPENDENCIES="$PACKAGE_DEPENDENCIES --depends $PACKAGE_DEPENDENCY"
|
|
done
|
|
fi
|
|
|
|
if [ ! -z "${{ matrix.no-auto-depends }}" ]; then
|
|
PACKAGE_DEPENDENCIES="$PACKAGE_DEPENDENCIES --no-auto-depends"
|
|
fi
|
|
|
|
cpanm Module::Build::Tiny
|
|
cpanm Module::Install
|
|
|
|
gem install fpm
|
|
# Patch to apply fpm fix for debian package generation while waiting for the official fix to be released.
|
|
patch -i .github/patch/fpm-deb.rb.diff $(find / -type f -name "deb.rb")
|
|
fpm -a native -s cpan -t ${{ matrix.package_extension }} --deb-dist ${{ matrix.distrib }} --iteration ${{ matrix.distrib }} --verbose --cpan-verbose --no-cpan-test$PACKAGE_DEPENDENCIES -v ${{ steps.package-version.outputs.package_version }} ${{ matrix.name }}
|
|
shell: bash
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) && matrix.use_dh_make_perl == 'true' }}
|
|
run: |
|
|
apt-get install -y libcurl4-openssl-dev dh-make-perl libssh-dev uuid-dev libczmq-dev libmodule-install-perl libmodule-build-tiny-perl
|
|
# module-build-tiny is required for Mojo::IOLoop::Signal build.
|
|
|
|
DEB_BUILD_OPTIONS="nocheck nodocs notest" dh-make-perl make --dist ${{ matrix.distrib }} --build --version ${{ steps.package-version.outputs.package_version }}-${{ matrix.distrib }} --cpan ${{ matrix.name }}
|
|
shell: bash
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) }}
|
|
name: Replace '::' with - in the feature path
|
|
id: package-name
|
|
run: |
|
|
name="${{ matrix.name }}"
|
|
name_with_dash="${name//::/-}"
|
|
echo "Modified Name: $name_with_dash"
|
|
echo "name_with_dash=$name_with_dash" >> $GITHUB_OUTPUT
|
|
shell: bash
|
|
|
|
- if: ${{ contains(matrix.build_distribs, matrix.distrib) }}
|
|
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
|
with:
|
|
name: packages-${{ matrix.package_extension }}-${{ matrix.distrib }}-${{ matrix.arch }}-${{ steps.package-name.outputs.name_with_dash}}
|
|
path: ./*.${{ matrix.package_extension }}
|
|
retention-days: 1
|
|
|
|
merge-package-deb-artifacts:
|
|
needs: [package-deb]
|
|
runs-on: ubuntu-22.04
|
|
strategy:
|
|
matrix:
|
|
distrib: [bullseye, bookworm, jammy]
|
|
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
|
|
- name: Merging Artifacts
|
|
uses: ./.github/actions/merge-artifacts
|
|
with:
|
|
target_name: packages-deb-${{ matrix.distrib }}
|
|
source_paths: packages-deb-${{ matrix.distrib }}/*.deb
|
|
source_name_pattern: packages-deb-${{ matrix.distrib }}-
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
download-and-cache-deb:
|
|
needs: [merge-package-deb-artifacts]
|
|
runs-on: ubuntu-22.04
|
|
strategy:
|
|
matrix:
|
|
distrib: [bullseye, bookworm, jammy]
|
|
steps:
|
|
- uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
|
with:
|
|
name: packages-deb-${{ matrix.distrib }}
|
|
path: ./
|
|
|
|
- uses: actions/cache/save@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
|
with:
|
|
path: ./*.deb
|
|
key: ${{ github.sha }}-${{ github.run_id }}-deb-${{ matrix.distrib }}
|
|
|
|
deliver-deb:
|
|
needs: [get-environment, download-and-cache-deb]
|
|
if: ${{ contains(fromJson('["testing", "unstable"]'), needs.get-environment.outputs.stability) }}
|
|
runs-on: [self-hosted, common]
|
|
|
|
strategy:
|
|
matrix:
|
|
distrib: [bullseye, bookworm, jammy]
|
|
|
|
steps:
|
|
- name: Checkout sources
|
|
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
|
|
- name: Delivery
|
|
uses: ./.github/actions/deb-delivery
|
|
with:
|
|
module_name: perl-cpan-libraries
|
|
distrib: ${{ matrix.distrib }}
|
|
artifactory_token: ${{ secrets.ARTIFACTORY_ACCESS_TOKEN }}
|
|
cache_key: ${{ github.sha }}-${{ github.run_id }}-deb-${{ matrix.distrib }}
|
|
stability: ${{ needs.get-environment.outputs.stability }}
|
|
|
|
promote:
|
|
needs: [get-environment]
|
|
if: ${{ contains(fromJson('["stable"]'), needs.get-environment.outputs.stability) }}
|
|
runs-on: [self-hosted, common]
|
|
strategy:
|
|
matrix:
|
|
distrib: [el8, el9, bullseye, bookworm]
|
|
|
|
steps:
|
|
- name: Checkout sources
|
|
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
|
|
- name: Promote ${{ matrix.distrib }} to stable
|
|
uses: ./.github/actions/promote-to-stable
|
|
with:
|
|
artifactory_token: ${{ secrets.ARTIFACTORY_ACCESS_TOKEN }}
|
|
module: perl-cpan-libraries
|
|
distrib: ${{ matrix.distrib }}
|
|
stability: ${{ needs.get-environment.outputs.stability }}
|