Deploy different versions of fedora, debian, and ubuntu from the same container

This commit is contained in:
Micah Lee 2021-11-30 17:08:24 -08:00
parent 4ecaad18fd
commit defe9ef9dc
No known key found for this signature in database
GPG key ID: 403C2657CD994F73

View file

@ -58,6 +58,7 @@ aliases:
# install packagecloud.io # install packagecloud.io
dnf module install -y ruby:2.7 # requires ruby 2.7 dnf module install -y ruby:2.7 # requires ruby 2.7
dnf --allowerasing -y distro-sync dnf --allowerasing -y distro-sync
dnf install -y ruby-devel
gem install package_cloud gem install package_cloud
# deploy the package # deploy the package
@ -149,22 +150,6 @@ jobs:
- run: *copy-image - run: *copy-image
- run: *build-deb - run: *build-deb
deploy-ubuntu-impish:
docker:
- image: ubuntu:21.10
resource_class: medium+
steps:
- run: *install-dependencies-deb
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-deb
- run:
environment:
PACKAGE_TYPE: "deb"
PACKAGECLOUD_DISTRO: "ubuntu/impish"
<<: *deploy-packagecloud
build-ubuntu-hirsute: build-ubuntu-hirsute:
docker: docker:
- image: ubuntu:21.04 - image: ubuntu:21.04
@ -176,22 +161,6 @@ jobs:
- run: *copy-image - run: *copy-image
- run: *build-deb - run: *build-deb
deploy-ubuntu-hirsute:
docker:
- image: ubuntu:21.04
resource_class: medium+
steps:
- run: *install-dependencies-deb
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-deb
- run:
environment:
PACKAGE_TYPE: "deb"
PACKAGECLOUD_DISTRO: "ubuntu/hirsute"
<<: *deploy-packagecloud
build-ubuntu-groovy: build-ubuntu-groovy:
docker: docker:
- image: ubuntu:20.10 - image: ubuntu:20.10
@ -203,22 +172,6 @@ jobs:
- run: *copy-image - run: *copy-image
- run: *build-deb - run: *build-deb
deploy-ubuntu-groovy:
docker:
- image: ubuntu:20.10
resource_class: medium+
steps:
- run: *install-dependencies-deb
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-deb
- run:
environment:
PACKAGE_TYPE: "deb"
PACKAGECLOUD_DISTRO: "ubuntu/groovy"
<<: *deploy-packagecloud
build-debian-bookworm: build-debian-bookworm:
docker: docker:
- image: debian:bookworm - image: debian:bookworm
@ -230,22 +183,6 @@ jobs:
- run: *copy-image - run: *copy-image
- run: *build-deb - run: *build-deb
deploy-debian-bookworm:
docker:
- image: debian:bookworm
resource_class: medium+
steps:
- run: *install-dependencies-deb
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-deb
- run:
environment:
PACKAGE_TYPE: "deb"
PACKAGECLOUD_DISTRO: "debian/bookworm"
<<: *deploy-packagecloud
build-debian-bullseye: build-debian-bullseye:
docker: docker:
- image: debian:bullseye - image: debian:bullseye
@ -257,7 +194,66 @@ jobs:
- run: *copy-image - run: *copy-image
- run: *build-deb - run: *build-deb
deploy-debian-bullseye: build-fedora-35:
docker:
- image: fedora:35
resource_class: medium+
steps:
- run: *install-dependencies-rpm
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-rpm
build-fedora-34:
docker:
- image: fedora:34
resource_class: medium+
steps:
- run: *install-dependencies-rpm
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-rpm
build-fedora-33:
docker:
- image: fedora:33
resource_class: medium+
steps:
- run: *install-dependencies-rpm
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-rpm
deploy-fedora:
docker:
- image: fedora:33
resource_class: medium+
steps:
- run: *install-dependencies-rpm
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-rpm
- run:
environment:
PACKAGE_TYPE: "rpm"
PACKAGECLOUD_DISTRO: "fedora/33"
<<: *deploy-packagecloud
- run:
environment:
PACKAGE_TYPE: "rpm"
PACKAGECLOUD_DISTRO: "fedora/34"
<<: *deploy-packagecloud
- run:
environment:
PACKAGE_TYPE: "rpm"
PACKAGECLOUD_DISTRO: "fedora/35"
<<: *deploy-packagecloud
deploy-debian:
docker: docker:
- image: debian:bullseye - image: debian:bullseye
resource_class: medium+ resource_class: medium+
@ -272,86 +268,36 @@ jobs:
PACKAGE_TYPE: "deb" PACKAGE_TYPE: "deb"
PACKAGECLOUD_DISTRO: "debian/bullseye" PACKAGECLOUD_DISTRO: "debian/bullseye"
<<: *deploy-packagecloud <<: *deploy-packagecloud
build-fedora-35:
docker:
- image: fedora:35
resource_class: medium+
steps:
- run: *install-dependencies-rpm
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-rpm
deploy-fedora-35:
docker:
- image: fedora:35
resource_class: medium+
steps:
- run: *install-dependencies-rpm
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-rpm
- run: - run:
environment: environment:
PACKAGE_TYPE: "rpm" PACKAGE_TYPE: "deb"
PACKAGECLOUD_DISTRO: "fedora/35" PACKAGECLOUD_DISTRO: "debian/bookworm"
<<: *deploy-packagecloud <<: *deploy-packagecloud
build-fedora-34: deploy-ubuntu:
docker: docker:
- image: fedora:34 - image: ubuntu:21.10
resource_class: medium+ resource_class: medium+
steps: steps:
- run: *install-dependencies-rpm - run: *install-dependencies-deb
- checkout - checkout
- restore_cache: *restore-cache - restore_cache: *restore-cache
- run: *copy-image - run: *copy-image
- run: *build-rpm - run: *build-deb
deploy-fedora-34:
docker:
- image: fedora:34
resource_class: medium+
steps:
- run: *install-dependencies-rpm
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-rpm
- run: - run:
environment: environment:
PACKAGE_TYPE: "rpm" PACKAGE_TYPE: "deb"
PACKAGECLOUD_DISTRO: "fedora/34" PACKAGECLOUD_DISTRO: "ubuntu/impish"
<<: *deploy-packagecloud <<: *deploy-packagecloud
build-fedora-33:
docker:
- image: fedora:33
resource_class: medium+
steps:
- run: *install-dependencies-rpm
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-rpm
deploy-fedora-33:
docker:
- image: fedora:33
resource_class: medium+
steps:
- run: *install-dependencies-rpm
- checkout
- restore_cache: *restore-cache
- run: *copy-image
- run: *build-rpm
- run: - run:
environment: environment:
PACKAGE_TYPE: "rpm" PACKAGE_TYPE: "deb"
PACKAGECLOUD_DISTRO: "fedora/33" PACKAGECLOUD_DISTRO: "ubuntu/hirsute"
<<: *deploy-packagecloud
- run:
environment:
PACKAGE_TYPE: "deb"
PACKAGECLOUD_DISTRO: "ubuntu/groovy"
<<: *deploy-packagecloud <<: *deploy-packagecloud
workflows: workflows:
@ -396,7 +342,7 @@ workflows:
only: /^v.*/ only: /^v.*/
branches: branches:
ignore: /.*/ ignore: /.*/
- deploy-ubuntu-impish: - deploy-ubuntu:
requires: requires:
- build-container-image - build-container-image
filters: filters:
@ -404,7 +350,7 @@ workflows:
only: /^v.*/ only: /^v.*/
branches: branches:
ignore: /.*/ ignore: /.*/
- deploy-ubuntu-hirsute: - deploy-debian:
requires: requires:
- build-container-image - build-container-image
filters: filters:
@ -412,47 +358,7 @@ workflows:
only: /^v.*/ only: /^v.*/
branches: branches:
ignore: /.*/ ignore: /.*/
- deploy-ubuntu-groovy: - deploy-fedora:
requires:
- build-container-image
filters:
tags:
only: /^v.*/
branches:
ignore: /.*/
- deploy-debian-bookworm:
requires:
- build-container-image
filters:
tags:
only: /^v.*/
branches:
ignore: /.*/
- deploy-debian-bullseye:
requires:
- build-container-image
filters:
tags:
only: /^v.*/
branches:
ignore: /.*/
- deploy-fedora-35:
requires:
- build-container-image
filters:
tags:
only: /^v.*/
branches:
ignore: /.*/
- deploy-fedora-34:
requires:
- build-container-image
filters:
tags:
only: /^v.*/
branches:
ignore: /.*/
- deploy-fedora-33:
requires: requires:
- build-container-image - build-container-image
filters: filters: