mirror of
https://github.com/kasmtech/workspaces-images.git
synced 2026-07-25 19:14:05 +00:00
QA-136 staggering builds for 1.17.0
This commit is contained in:
parent
bdf5b88c7d
commit
ef86616831
4 changed files with 337 additions and 127 deletions
|
|
@ -21,28 +21,37 @@ before_script:
|
|||
#######################
|
||||
template:
|
||||
stage: template
|
||||
rules:
|
||||
- when: always
|
||||
script:
|
||||
- apk add py3-jinja2 py3-yaml
|
||||
- cd ci-scripts
|
||||
- python3 template-gitlab.py
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
artifacts:
|
||||
paths:
|
||||
- gitlab-ci.yml
|
||||
|
||||
pipeline:
|
||||
stage: run
|
||||
except:
|
||||
variables:
|
||||
- $README_USERNAME_RUN
|
||||
- $README_PASSWORD_RUN
|
||||
- $QUAY_API_KEY_RUN
|
||||
- $DOCKERHUB_REVERT_RUN
|
||||
- $REVERT_IS_ROLLING_RUN
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME ||
|
||||
$README_PASSWORD ||
|
||||
$QUAY_API_KEY ||
|
||||
$DOCKERHUB_REVERT ||
|
||||
$REVERT_IS_ROLLING
|
||||
when: never
|
||||
- when: on_success
|
||||
variables:
|
||||
PARENT_PIPELINE_SOURCE: "$CI_PIPELINE_SOURCE"
|
||||
RUN_SET: "$RUN_SET"
|
||||
trigger:
|
||||
include:
|
||||
- artifact: gitlab-ci.yml
|
||||
job: template
|
||||
|
||||
pipeline_readme:
|
||||
stage: run
|
||||
only:
|
||||
|
|
@ -56,6 +65,7 @@ pipeline_readme:
|
|||
include:
|
||||
- artifact: gitlab-ci.yml
|
||||
job: template
|
||||
|
||||
pipeline_readme_quay:
|
||||
stage: run
|
||||
only:
|
||||
|
|
@ -67,6 +77,7 @@ pipeline_readme_quay:
|
|||
include:
|
||||
- artifact: gitlab-ci.yml
|
||||
job: template
|
||||
|
||||
pipeline_revert:
|
||||
stage: run
|
||||
only:
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@ before_script:
|
|||
- if [ "$CI_COMMIT_REF_PROTECTED" == "true" ]; then docker login --username $QUAY_USERNAME --password $QUAY_PASSWORD quay.io; fi
|
||||
- if [ "$CI_COMMIT_REF_PROTECTED" == "true" ]; then docker login --username $GHCR_USERNAME --password $GHCR_PASSWORD ghcr.io; fi
|
||||
- export SANITIZED_BRANCH="$(echo $CI_COMMIT_REF_NAME | sed -r 's#^release/##' | sed 's/\//_/g')"
|
||||
- export BASE_TAG="{{ BASE_TAG }}"
|
||||
|
||||
###############################################
|
||||
# Build Containers and push to cache endpoint #
|
||||
|
|
@ -31,49 +30,55 @@ before_script:
|
|||
{% for IMAGE in multiImages %}
|
||||
build_{{ IMAGE.name }}:
|
||||
stage: build
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/build.sh "{{ IMAGE.name }}" "{{ IMAGE.base }}" "{{ IMAGE.dockerfile }}"
|
||||
{% if FILE_LIMITS %}only:
|
||||
changes:
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME ||
|
||||
$README_PASSWORD ||
|
||||
$QUAY_API_KEY ||
|
||||
$DOCKERHUB_REVERT ||
|
||||
$REVERT_IS_ROLLING
|
||||
when: never
|
||||
{% if FILE_LIMITS %}- changes:
|
||||
{% for FILE in files %}- {{ FILE }}
|
||||
{% endfor %}{% for FILE in IMAGE.changeFiles %}- {{ FILE }}
|
||||
{% endfor %}{% endif %}
|
||||
except:
|
||||
variables:
|
||||
- $README_USERNAME
|
||||
- $README_PASSWORD
|
||||
- $QUAY_API_KEY
|
||||
- $DOCKERHUB_REVERT
|
||||
- $REVERT_IS_ROLLING
|
||||
- if: $PARENT_PIPELINE_SOURCE == "schedule" && $RUN_SET != "{{ IMAGE.runset }}"
|
||||
when: never
|
||||
- when: on_success
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/build.sh "{{ IMAGE.name }}" "{{ IMAGE.base }}" "{{ IMAGE.dockerfile }}"
|
||||
tags:
|
||||
- ${TAG}
|
||||
retry: 1
|
||||
parallel:
|
||||
matrix:
|
||||
- TAG: [ oci-fixed-amd, oci-fixed-arm ]
|
||||
- TAG: [ oci-amd-scheduled, oci-arm-scheduled ]
|
||||
{% endfor %}
|
||||
|
||||
{% for IMAGE in singleImages %}
|
||||
build_{{ IMAGE.name }}:
|
||||
stage: build
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/build.sh "{{ IMAGE.name }}" "{{ IMAGE.base }}" "{{ IMAGE.dockerfile }}"
|
||||
{% if FILE_LIMITS %}only:
|
||||
changes:
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME ||
|
||||
$README_PASSWORD ||
|
||||
$QUAY_API_KEY ||
|
||||
$DOCKERHUB_REVERT ||
|
||||
$REVERT_IS_ROLLING
|
||||
when: never
|
||||
{% if FILE_LIMITS %}- changes:
|
||||
{% for FILE in files %}- {{ FILE }}
|
||||
{% endfor %}{% for FILE in IMAGE.changeFiles %}- {{ FILE }}
|
||||
{% endfor %}{% endif %}
|
||||
except:
|
||||
variables:
|
||||
- $README_USERNAME
|
||||
- $README_PASSWORD
|
||||
- $QUAY_API_KEY
|
||||
- $DOCKERHUB_REVERT
|
||||
- $REVERT_IS_ROLLING
|
||||
- if: $PARENT_PIPELINE_SOURCE == "schedule" && $RUN_SET != "{{ IMAGE.runset }}"
|
||||
when: never
|
||||
- when: on_success
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/build.sh "{{ IMAGE.name }}" "{{ IMAGE.base }}" "{{ IMAGE.dockerfile }}"
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
retry: 1
|
||||
{% endfor %}
|
||||
|
||||
|
|
@ -83,27 +88,28 @@ build_{{ IMAGE.name }}:
|
|||
{% for IMAGE in multiImages %}
|
||||
test_{{ IMAGE.name }}:
|
||||
stage: test
|
||||
when: always
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/test.sh "{{ IMAGE.name }}" "{{ IMAGE.base }}" "{{ IMAGE.dockerfile }}" "${ARCH}" "${EC2_LAUNCHER_ID}" "${EC2_LAUNCHER_SECRET}"
|
||||
{% if FILE_LIMITS %}only:
|
||||
changes:
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME ||
|
||||
$README_PASSWORD ||
|
||||
$QUAY_API_KEY ||
|
||||
$DOCKERHUB_REVERT ||
|
||||
$REVERT_IS_ROLLING
|
||||
when: never
|
||||
- if: $PARENT_PIPELINE_SOURCE == "schedule" && $RUN_SET != "{{ IMAGE.runset }}"
|
||||
when: never
|
||||
{% if FILE_LIMITS %}- changes:
|
||||
{% for FILE in files %}- {{ FILE }}
|
||||
{% endfor %}{% for FILE in IMAGE.changeFiles %}- {{ FILE }}
|
||||
{% endfor %}{% endif %}
|
||||
except:
|
||||
variables:
|
||||
- $README_USERNAME
|
||||
- $README_PASSWORD
|
||||
- $QUAY_API_KEY
|
||||
- $DOCKERHUB_REVERT
|
||||
- $REVERT_IS_ROLLING
|
||||
- when: on_success
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/test.sh "{{ IMAGE.name }}" "{{ IMAGE.base }}" "{{ IMAGE.dockerfile }}" "${ARCH}" "${EC2_LAUNCHER_ID}" "${EC2_LAUNCHER_SECRET}"
|
||||
needs:
|
||||
- build_{{ IMAGE.name }}
|
||||
when: on_success
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
retry: 1
|
||||
parallel:
|
||||
matrix:
|
||||
|
|
@ -113,27 +119,28 @@ test_{{ IMAGE.name }}:
|
|||
{% for IMAGE in singleImages %}
|
||||
test_{{ IMAGE.name }}:
|
||||
stage: test
|
||||
when: always
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/test.sh "{{ IMAGE.name }}" "{{ IMAGE.base }}" "{{ IMAGE.dockerfile }}" "x86_64" "${EC2_LAUNCHER_ID}" "${EC2_LAUNCHER_SECRET}"
|
||||
{% if FILE_LIMITS %}only:
|
||||
changes:
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME ||
|
||||
$README_PASSWORD ||
|
||||
$QUAY_API_KEY ||
|
||||
$DOCKERHUB_REVERT ||
|
||||
$REVERT_IS_ROLLING
|
||||
when: never
|
||||
- if: $PARENT_PIPELINE_SOURCE == "schedule" && $RUN_SET != "{{ IMAGE.runset }}"
|
||||
when: never
|
||||
{% if FILE_LIMITS %}- changes:
|
||||
{% for FILE in files %}- {{ FILE }}
|
||||
{% endfor %}{% for FILE in IMAGE.changeFiles %}- {{ FILE }}
|
||||
{% endfor %}{% endif %}
|
||||
except:
|
||||
variables:
|
||||
- $README_USERNAME
|
||||
- $README_PASSWORD
|
||||
- $QUAY_API_KEY
|
||||
- $DOCKERHUB_REVERT
|
||||
- $REVERT_IS_ROLLING
|
||||
- when: on_success
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/test.sh "{{ IMAGE.name }}" "{{ IMAGE.base }}" "{{ IMAGE.dockerfile }}" "x86_64" "${EC2_LAUNCHER_ID}" "${EC2_LAUNCHER_SECRET}"
|
||||
needs:
|
||||
- build_{{ IMAGE.name }}
|
||||
when: on_success
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
retry: 1
|
||||
{% endfor %}
|
||||
|
||||
|
|
@ -143,63 +150,117 @@ test_{{ IMAGE.name }}:
|
|||
{% for IMAGE in multiImages %}
|
||||
manifest_{{ IMAGE.name }}:
|
||||
stage: manifest
|
||||
when: always
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME ||
|
||||
$README_PASSWORD ||
|
||||
$QUAY_API_KEY ||
|
||||
$DOCKERHUB_REVERT ||
|
||||
$REVERT_IS_ROLLING
|
||||
when: never
|
||||
- if: $PARENT_PIPELINE_SOURCE == "schedule" && $RUN_SET != "{{ IMAGE.runset }}"
|
||||
when: never
|
||||
{% if FILE_LIMITS %}- changes:
|
||||
{% for FILE in files %}- {{ FILE }}
|
||||
{% endfor %}{% for FILE in IMAGE.changeFiles %}- {{ FILE }}
|
||||
{% endfor %}{% endif %}
|
||||
- when: on_success
|
||||
variables:
|
||||
SCHEDULED: "{{ SCHEDULED }}"
|
||||
SCHEDULE_NAME: "{{ SCHEDULE_NAME }}"
|
||||
script:
|
||||
- apk add bash tar
|
||||
- bash ci-scripts/manifest.sh "{{ IMAGE.name }}" "multi"{% if IMAGE.singleapp %}
|
||||
- bash ci-scripts/app-layer.sh "{{ IMAGE.name }}" "multi" "{{ IMAGE.base }}"{% endif %}
|
||||
{% if FILE_LIMITS %}only:
|
||||
changes:
|
||||
{% for FILE in files %}- {{ FILE }}
|
||||
{% endfor %}{% for FILE in IMAGE.changeFiles %}- {{ FILE }}
|
||||
{% endfor %}{% endif %}
|
||||
except:
|
||||
variables:
|
||||
- $README_USERNAME
|
||||
- $README_PASSWORD
|
||||
- $QUAY_API_KEY
|
||||
- $DOCKERHUB_REVERT
|
||||
- $REVERT_IS_ROLLING
|
||||
- bash ci-scripts/manifest.sh "{{ IMAGE.name }}" "multi"
|
||||
# Disabling app layer build due to feature not being used
|
||||
#{% if IMAGE.singleapp %}
|
||||
#- bash ci-scripts/app-layer.sh "{{ IMAGE.name }}" "multi" "{{ IMAGE.base }}"{% endif %}
|
||||
needs:
|
||||
- test_{{ IMAGE.name }}
|
||||
when: on_success
|
||||
retry: 1
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
||||
{% for IMAGE in singleImages %}
|
||||
manifest_{{ IMAGE.name }}:
|
||||
stage: manifest
|
||||
when: always
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME ||
|
||||
$README_PASSWORD ||
|
||||
$QUAY_API_KEY ||
|
||||
$DOCKERHUB_REVERT ||
|
||||
$REVERT_IS_ROLLING
|
||||
when: never
|
||||
- if: $PARENT_PIPELINE_SOURCE == "schedule" && $RUN_SET != "{{ IMAGE.runset }}"
|
||||
when: never
|
||||
{% if FILE_LIMITS %}- changes:
|
||||
{% for FILE in files %}- {{ FILE }}
|
||||
{% endfor %}{% for FILE in IMAGE.changeFiles %}- {{ FILE }}
|
||||
{% endfor %}{% endif %}
|
||||
- when: on_success
|
||||
variables:
|
||||
SCHEDULED: "{{ SCHEDULED }}"
|
||||
SCHEDULE_NAME: "{{ SCHEDULE_NAME }}"
|
||||
script:
|
||||
- apk add bash tar
|
||||
- bash ci-scripts/manifest.sh "{{ IMAGE.name }}" "single"{% if IMAGE.singleapp %}
|
||||
- bash ci-scripts/app-layer.sh "{{ IMAGE.name }}" "single" "{{ IMAGE.base }}"{% endif %}
|
||||
{% if FILE_LIMITS %}only:
|
||||
changes:
|
||||
{% for FILE in files %}- {{ FILE }}
|
||||
{% endfor %}{% for FILE in IMAGE.changeFiles %}- {{ FILE }}
|
||||
{% endfor %}{% endif %}
|
||||
except:
|
||||
variables:
|
||||
- $README_USERNAME
|
||||
- $README_PASSWORD
|
||||
- $QUAY_API_KEY
|
||||
- $DOCKERHUB_REVERT
|
||||
- $REVERT_IS_ROLLING
|
||||
- bash ci-scripts/manifest.sh "{{ IMAGE.name }}" "single"
|
||||
# Disabling app layer build due to feature not being used
|
||||
#{% if IMAGE.singleapp %}
|
||||
#- bash ci-scripts/app-layer.sh "{{ IMAGE.name }}" "single" "{{ IMAGE.base }}"{% endif %}
|
||||
needs:
|
||||
- test_{{ IMAGE.name }}
|
||||
when: on_success
|
||||
retry: 1
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
||||
#############################
|
||||
# Manifest for Weekly Build #
|
||||
#############################
|
||||
|
||||
{% for IMAGE in multiImages %}
|
||||
weekly_manifest_{{ IMAGE.name }}:
|
||||
stage: manifest
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME ||
|
||||
$README_PASSWORD ||
|
||||
$QUAY_API_KEY ||
|
||||
$DOCKERHUB_REVERT ||
|
||||
$REVERT_IS_ROLLING
|
||||
when: never
|
||||
- if: $PARENT_PIPELINE_SOURCE == "schedule" && $RUN_SET == "schedule"
|
||||
when: always
|
||||
- when: never
|
||||
script:
|
||||
- apk add bash tar
|
||||
- bash ci-scripts/weekly-manifest.sh "{{ IMAGE.name }}" "multi"
|
||||
retry: 1
|
||||
tags:
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
||||
{% for IMAGE in singleImages %}
|
||||
weekly_manifest_{{ IMAGE.name }}:
|
||||
stage: manifest
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME ||
|
||||
$README_PASSWORD ||
|
||||
$QUAY_API_KEY ||
|
||||
$DOCKERHUB_REVERT ||
|
||||
$REVERT_IS_ROLLING
|
||||
when: never
|
||||
- if: $PARENT_PIPELINE_SOURCE == "schedule" && $RUN_SET == "schedule"
|
||||
when: always
|
||||
- when: never
|
||||
script:
|
||||
- apk add bash tar
|
||||
- bash ci-scripts/weekly-manifest.sh "{{ IMAGE.name }}" "single"
|
||||
retry: 1
|
||||
tags:
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
||||
####################
|
||||
|
|
@ -210,81 +271,85 @@ manifest_{{ IMAGE.name }}:
|
|||
{% for IMAGE in multiImages %}
|
||||
update_readmes_{{ IMAGE.name }}:
|
||||
stage: readme
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME &&
|
||||
$README_PASSWORD
|
||||
when: always
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/readme.sh "{{ IMAGE.name }}"
|
||||
only:
|
||||
variables:
|
||||
- $README_USERNAME
|
||||
- $README_PASSWORD
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
||||
{% for IMAGE in singleImages %}
|
||||
update_readmes_{{ IMAGE.name }}:
|
||||
stage: readme
|
||||
rules:
|
||||
- if: >
|
||||
$README_USERNAME &&
|
||||
$README_PASSWORD
|
||||
when: always
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/readme.sh "{{ IMAGE.name }}"
|
||||
only:
|
||||
variables:
|
||||
- $README_USERNAME
|
||||
- $README_PASSWORD
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
||||
## Update Quay Readmes ##
|
||||
{% for IMAGE in multiImages %}
|
||||
update_quay_readmes_{{ IMAGE.name }}:
|
||||
stage: readme
|
||||
rules:
|
||||
- if: $QUAY_API_KEY
|
||||
when: always
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/quay_readme.sh "{{ IMAGE.name }}"
|
||||
only:
|
||||
variables:
|
||||
- $QUAY_API_KEY
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
||||
{% for IMAGE in singleImages %}
|
||||
update_quay_readmes_{{ IMAGE.name }}:
|
||||
stage: readme
|
||||
rules:
|
||||
- if: $QUAY_API_KEY
|
||||
when: always
|
||||
script:
|
||||
- apk add bash
|
||||
- bash ci-scripts/quay_readme.sh "{{ IMAGE.name }}"
|
||||
only:
|
||||
variables:
|
||||
- $QUAY_API_KEY
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
||||
## Revert Images to specific build id ##
|
||||
{% for IMAGE in multiImages %}
|
||||
dockerhub_revert_{{ IMAGE.name }}:
|
||||
stage: revert
|
||||
rules:
|
||||
- if: >
|
||||
$DOCKERHUB_REVERT &&
|
||||
$REVERT_IS_ROLLING
|
||||
when: always
|
||||
script:
|
||||
- /bin/bash ci-scripts/manifest.sh "{{ IMAGE.name }}" "multi" "${DOCKERHUB_REVERT}" "${REVERT_IS_ROLLING}"
|
||||
only:
|
||||
variables:
|
||||
- $DOCKERHUB_REVERT
|
||||
- $REVERT_IS_ROLLING
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
||||
{% for IMAGE in singleImages %}
|
||||
dockerhub_revert_{{ IMAGE.name }}:
|
||||
stage: revert
|
||||
rules:
|
||||
- if: >
|
||||
$DOCKERHUB_REVERT &&
|
||||
$REVERT_IS_ROLLING
|
||||
when: always
|
||||
script:
|
||||
- /bin/bash ci-scripts/manifest.sh "{{ IMAGE.name }}" "single" "${DOCKERHUB_REVERT}" "${REVERT_IS_ROLLING}"
|
||||
only:
|
||||
variables:
|
||||
- $DOCKERHUB_REVERT
|
||||
- $REVERT_IS_ROLLING
|
||||
tags:
|
||||
- oci-fixed-amd
|
||||
- oci-amd-scheduled
|
||||
{% endfor %}
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ files: &UNIVERSAL_CHANGE_FILES
|
|||
multiImages:
|
||||
- name: audacity
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-audacity
|
||||
changeFiles:
|
||||
|
|
@ -13,6 +14,7 @@ multiImages:
|
|||
- src/ubuntu/install/audacity/**
|
||||
- name: chromium
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-chromium
|
||||
changeFiles:
|
||||
|
|
@ -22,6 +24,7 @@ multiImages:
|
|||
- src/ubuntu/install/certificates/**
|
||||
- name: deluge
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-deluge
|
||||
changeFiles:
|
||||
|
|
@ -29,6 +32,7 @@ multiImages:
|
|||
- src/ubuntu/install/deluge/**
|
||||
- name: doom
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-doom
|
||||
changeFiles:
|
||||
|
|
@ -36,6 +40,7 @@ multiImages:
|
|||
- src/ubuntu/install/doom/**
|
||||
- name: filezilla
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-filezilla
|
||||
changeFiles:
|
||||
|
|
@ -43,6 +48,7 @@ multiImages:
|
|||
- src/ubuntu/install/filezilla/**
|
||||
- name: firefox
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-firefox
|
||||
changeFiles:
|
||||
|
|
@ -52,6 +58,7 @@ multiImages:
|
|||
- src/ubuntu/install/certificates/**
|
||||
- name: gimp
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-gimp
|
||||
changeFiles:
|
||||
|
|
@ -59,6 +66,7 @@ multiImages:
|
|||
- src/ubuntu/install/gimp/**
|
||||
- name: inkscape
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-inkscape
|
||||
changeFiles:
|
||||
|
|
@ -66,6 +74,7 @@ multiImages:
|
|||
- src/ubuntu/install/inkscape/**
|
||||
- name: java-dev
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-java-dev
|
||||
changeFiles:
|
||||
|
|
@ -80,6 +89,7 @@ multiImages:
|
|||
- src/ubuntu/install/eclipse/**
|
||||
- name: kasmos-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-kasmos
|
||||
dockerfile: dockerfile-kasmos-desktop
|
||||
changeFiles:
|
||||
|
|
@ -100,6 +110,7 @@ multiImages:
|
|||
- src/ubuntu/install/cleanup/**
|
||||
- name: libre-office
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-libre-office
|
||||
changeFiles:
|
||||
|
|
@ -107,6 +118,7 @@ multiImages:
|
|||
- src/ubuntu/install/libre_office/**
|
||||
- name: nessus
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-nessus
|
||||
changeFiles:
|
||||
|
|
@ -116,6 +128,7 @@ multiImages:
|
|||
- src/ubuntu/install/cleanup/**
|
||||
- name: opensuse-15-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-opensuse-15
|
||||
dockerfile: dockerfile-kasm-opensuse-15-desktop
|
||||
changeFiles:
|
||||
|
|
@ -132,6 +145,7 @@ multiImages:
|
|||
- src/opensuse/install/**
|
||||
- name: oracle-8-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-oracle-8
|
||||
dockerfile: dockerfile-kasm-oracle-8-desktop
|
||||
changeFiles:
|
||||
|
|
@ -146,6 +160,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: pinta
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-noble
|
||||
dockerfile: dockerfile-kasm-pinta
|
||||
changeFiles:
|
||||
|
|
@ -153,6 +168,7 @@ multiImages:
|
|||
- src/ubuntu/install/pinta/**
|
||||
- name: qbittorrent
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-qbittorrent
|
||||
changeFiles:
|
||||
|
|
@ -160,6 +176,7 @@ multiImages:
|
|||
- src/ubuntu/install/qbittorrent/**
|
||||
- name: redroid
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-redroid
|
||||
changeFiles:
|
||||
|
|
@ -175,6 +192,7 @@ multiImages:
|
|||
- src/ubuntu/install/cleanup/**
|
||||
- name: remmina
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-remmina
|
||||
changeFiles:
|
||||
|
|
@ -182,6 +200,7 @@ multiImages:
|
|||
- src/ubuntu/install/remmina/**
|
||||
- name: spiderfoot
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-spiderfoot
|
||||
changeFiles:
|
||||
|
|
@ -192,6 +211,7 @@ multiImages:
|
|||
- src/ubuntu/install/cleanup/**
|
||||
- name: sublime-text
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-sublime-text
|
||||
changeFiles:
|
||||
|
|
@ -199,6 +219,7 @@ multiImages:
|
|||
- src/ubuntu/install/sublime_text/**
|
||||
- name: telegram
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-telegram
|
||||
changeFiles:
|
||||
|
|
@ -207,6 +228,7 @@ multiImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: terminal
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-terminal
|
||||
changeFiles:
|
||||
|
|
@ -216,6 +238,7 @@ multiImages:
|
|||
- src/ubuntu/install/terminal/**
|
||||
- name: thunderbird
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-thunderbird
|
||||
changeFiles:
|
||||
|
|
@ -223,6 +246,7 @@ multiImages:
|
|||
- src/ubuntu/install/thunderbird/**
|
||||
- name: tor-browser
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-tor-browser
|
||||
changeFiles:
|
||||
|
|
@ -231,6 +255,7 @@ multiImages:
|
|||
- src/ubuntu/install/torbrowser/**
|
||||
- name: ubuntu-jammy-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-ubuntu-jammy-desktop
|
||||
changeFiles:
|
||||
|
|
@ -258,6 +283,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: ubuntu-jammy-desktop-vpn
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-ubuntu-jammy-desktop-vpn
|
||||
changeFiles:
|
||||
|
|
@ -286,6 +312,7 @@ multiImages:
|
|||
- src/ubuntu/install/vpn/**
|
||||
- name: ubuntu-noble-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-ubuntu-noble
|
||||
dockerfile: dockerfile-kasm-ubuntu-noble-desktop
|
||||
changeFiles:
|
||||
|
|
@ -313,6 +340,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: vlc
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-vlc
|
||||
changeFiles:
|
||||
|
|
@ -320,6 +348,7 @@ multiImages:
|
|||
- src/ubuntu/install/vlc/**
|
||||
- name: vs-code
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-vs-code
|
||||
changeFiles:
|
||||
|
|
@ -328,6 +357,7 @@ multiImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: almalinux-8-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-almalinux-8
|
||||
dockerfile: dockerfile-kasm-almalinux-8-desktop
|
||||
changeFiles:
|
||||
|
|
@ -342,6 +372,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: almalinux-9-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-almalinux-9
|
||||
dockerfile: dockerfile-kasm-almalinux-9-desktop
|
||||
changeFiles:
|
||||
|
|
@ -355,6 +386,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: alpine-319-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-alpine-319
|
||||
dockerfile: dockerfile-kasm-alpine-319-desktop
|
||||
changeFiles:
|
||||
|
|
@ -364,6 +396,7 @@ multiImages:
|
|||
- src/alpine/install/**
|
||||
- name: alpine-320-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-alpine-320
|
||||
dockerfile: dockerfile-kasm-alpine-320-desktop
|
||||
changeFiles:
|
||||
|
|
@ -373,6 +406,7 @@ multiImages:
|
|||
- src/alpine/install/**
|
||||
- name: alpine-321-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-alpine-321
|
||||
dockerfile: dockerfile-kasm-alpine-321-desktop
|
||||
changeFiles:
|
||||
|
|
@ -382,6 +416,7 @@ multiImages:
|
|||
- src/alpine/install/**
|
||||
- name: brave
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-brave
|
||||
changeFiles:
|
||||
|
|
@ -390,6 +425,7 @@ multiImages:
|
|||
- src/ubuntu/install/brave/**
|
||||
- name: debian-bullseye-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-debian-bullseye
|
||||
dockerfile: dockerfile-kasm-debian-bullseye-desktop
|
||||
changeFiles:
|
||||
|
|
@ -415,6 +451,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: debian-bookworm-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-debian-bookworm
|
||||
dockerfile: dockerfile-kasm-debian-bookworm-desktop
|
||||
changeFiles:
|
||||
|
|
@ -440,6 +477,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: fedora-39-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-fedora-39
|
||||
dockerfile: dockerfile-kasm-fedora-39-desktop
|
||||
changeFiles:
|
||||
|
|
@ -453,6 +491,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: fedora-40-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-fedora-40
|
||||
dockerfile: dockerfile-kasm-fedora-40-desktop
|
||||
changeFiles:
|
||||
|
|
@ -466,6 +505,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: kali-rolling-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-kali-rolling
|
||||
dockerfile: dockerfile-kasm-kali-rolling-desktop
|
||||
changeFiles:
|
||||
|
|
@ -475,6 +515,7 @@ multiImages:
|
|||
- src/ubuntu/install/chromium/**
|
||||
- name: maltego
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-maltego
|
||||
changeFiles:
|
||||
|
|
@ -483,6 +524,7 @@ multiImages:
|
|||
- src/ubuntu/install/firefox/**
|
||||
- name: minetest
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-minetest
|
||||
changeFiles:
|
||||
|
|
@ -490,6 +532,7 @@ multiImages:
|
|||
- src/ubuntu/install/minetest/**
|
||||
- name: oracle-9-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-oracle-9
|
||||
dockerfile: dockerfile-kasm-oracle-9-desktop
|
||||
changeFiles:
|
||||
|
|
@ -503,6 +546,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: rhel-9-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-rhel-9
|
||||
dockerfile: dockerfile-kasm-rhel-9-desktop
|
||||
changeFiles:
|
||||
|
|
@ -516,6 +560,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: parrotos-6-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-parrotos-6
|
||||
dockerfile: dockerfile-kasm-parrotos-6-desktop
|
||||
changeFiles:
|
||||
|
|
@ -526,6 +571,7 @@ multiImages:
|
|||
- src/ubuntu/install/chromium/**
|
||||
- name: retroarch
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-retroarch
|
||||
changeFiles:
|
||||
|
|
@ -533,6 +579,7 @@ multiImages:
|
|||
- src/ubuntu/install/retroarch/**
|
||||
- name: rockylinux-8-desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-rockylinux-8
|
||||
dockerfile: dockerfile-kasm-rockylinux-8-desktop
|
||||
changeFiles:
|
||||
|
|
@ -547,6 +594,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: rockylinux-9-desktop
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-rockylinux-9
|
||||
dockerfile: dockerfile-kasm-rockylinux-9-desktop
|
||||
changeFiles:
|
||||
|
|
@ -560,6 +608,7 @@ multiImages:
|
|||
- src/ubuntu/install/slack/**
|
||||
- name: super-tux-kart
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-super-tux-kart
|
||||
changeFiles:
|
||||
|
|
@ -567,6 +616,7 @@ multiImages:
|
|||
- src/ubuntu/install/super_tux_kart/**
|
||||
- name: ubuntu-jammy-dind
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-ubuntu-jammy-dind
|
||||
changeFiles:
|
||||
|
|
@ -581,6 +631,7 @@ multiImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: ubuntu-jammy-dind-rootless
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-ubuntu-jammy-dind-rootless
|
||||
changeFiles:
|
||||
|
|
@ -596,6 +647,7 @@ multiImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: ubuntu-noble-dind
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-ubuntu-noble
|
||||
dockerfile: dockerfile-kasm-ubuntu-noble-dind
|
||||
changeFiles:
|
||||
|
|
@ -610,6 +662,7 @@ multiImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: ubuntu-noble-dind-rootless
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-ubuntu-noble
|
||||
dockerfile: dockerfile-kasm-ubuntu-noble-dind-rootless
|
||||
changeFiles:
|
||||
|
|
@ -625,6 +678,7 @@ multiImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: vivaldi
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-vivaldi
|
||||
changeFiles:
|
||||
|
|
@ -635,6 +689,7 @@ multiImages:
|
|||
singleImages:
|
||||
- name: blender
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-blender
|
||||
changeFiles:
|
||||
|
|
@ -642,6 +697,7 @@ singleImages:
|
|||
- src/ubuntu/install/blender/**
|
||||
- name: chrome
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-chrome
|
||||
changeFiles:
|
||||
|
|
@ -651,6 +707,7 @@ singleImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: desktop
|
||||
singleapp: false
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-desktop
|
||||
changeFiles:
|
||||
|
|
@ -660,6 +717,7 @@ singleImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: desktop-deluxe
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-desktop-deluxe
|
||||
changeFiles:
|
||||
|
|
@ -683,6 +741,7 @@ singleImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: discord
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-discord
|
||||
changeFiles:
|
||||
|
|
@ -690,6 +749,7 @@ singleImages:
|
|||
- src/ubuntu/install/discord/**
|
||||
- name: edge
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-edge
|
||||
changeFiles:
|
||||
|
|
@ -698,6 +758,7 @@ singleImages:
|
|||
- src/ubuntu/install/edge/**
|
||||
- name: hunchly
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-hunchly
|
||||
changeFiles:
|
||||
|
|
@ -706,6 +767,7 @@ singleImages:
|
|||
- src/ubuntu/install/hunchly/**
|
||||
- name: insomnia
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-insomnia
|
||||
changeFiles:
|
||||
|
|
@ -713,12 +775,14 @@ singleImages:
|
|||
- src/ubuntu/install/insomnia/**
|
||||
- name: only-office
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-only-office
|
||||
changeFiles:
|
||||
- dockerfile-kasm-only-office
|
||||
- name: postman
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-postman
|
||||
changeFiles:
|
||||
|
|
@ -727,6 +791,7 @@ singleImages:
|
|||
- src/ubuntu/install/postman/**
|
||||
- name: signal
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-signal
|
||||
changeFiles:
|
||||
|
|
@ -734,6 +799,7 @@ singleImages:
|
|||
- src/ubuntu/install/signal/**
|
||||
- name: slack
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-slack
|
||||
changeFiles:
|
||||
|
|
@ -744,6 +810,7 @@ singleImages:
|
|||
- src/ubuntu/install/cleanup/**
|
||||
- name: steam
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-steam
|
||||
changeFiles:
|
||||
|
|
@ -751,6 +818,7 @@ singleImages:
|
|||
- src/ubuntu/install/steam/**
|
||||
- name: tracelabs
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-kali-rolling
|
||||
dockerfile: dockerfile-kasm-tracelabs
|
||||
changeFiles:
|
||||
|
|
@ -760,6 +828,7 @@ singleImages:
|
|||
- src/ubuntu/install/tracelabs/**
|
||||
- name: unityhub
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-unityhub
|
||||
changeFiles:
|
||||
|
|
@ -769,6 +838,7 @@ singleImages:
|
|||
- src/ubuntu/install/unityhub/**
|
||||
- name: zoom
|
||||
singleapp: true
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-zoom
|
||||
changeFiles:
|
||||
|
|
@ -777,6 +847,7 @@ singleImages:
|
|||
- src/ubuntu/install/chrome/**
|
||||
- name: zsnes
|
||||
singleapp: true
|
||||
runset: set-a
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-zsnes
|
||||
changeFiles:
|
||||
|
|
@ -784,6 +855,7 @@ singleImages:
|
|||
- src/ubuntu/install/zsnes/**
|
||||
- name: forensic-osint
|
||||
singleapp: false
|
||||
runset: set-b
|
||||
base: core-ubuntu-jammy
|
||||
dockerfile: dockerfile-kasm-forensic-osint
|
||||
changeFiles:
|
||||
|
|
|
|||
62
ci-scripts/weekly-manifest.sh
Normal file
62
ci-scripts/weekly-manifest.sh
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
#!/bin/bash
|
||||
|
||||
REGISTRY_MIRRORS=("quay.io" "ghcr.io")
|
||||
NAME=$1
|
||||
TYPE=$2
|
||||
BASE=$3
|
||||
APPS="kasm-apps"
|
||||
SANITIZED_BRANCH_DAILY=${SANITIZED_BRANCH}-rolling-daily
|
||||
SANITIZED_BRANCH=${SANITIZED_BRANCH}-rolling-weekly
|
||||
|
||||
tagImage() {
|
||||
docker pull "$1"
|
||||
docker tag "$1" "$2"
|
||||
docker push "$2"
|
||||
}
|
||||
|
||||
manifest() {
|
||||
docker manifest push --purge "$1" || :
|
||||
docker manifest create "$1" "$2":x86_64-"$3" "$2":aarch64-"$3"
|
||||
docker manifest annotate "$1" "$2":aarch64-"$3" --os linux --arch arm64 --variant v8
|
||||
docker manifest push --purge "$1"
|
||||
}
|
||||
|
||||
# Manifest for multi pull and push for single arch
|
||||
# Will pull the daily rolling images and retag them to weekly
|
||||
if [[ "${TYPE}" == "multi" ]]; then
|
||||
# Pulling and retagging daily image
|
||||
tagImage "${ORG_NAME}/${NAME}:x86_64-${SANITIZED_BRANCH_DAILY}" "${ORG_NAME}/${NAME}:x86_64-${SANITIZED_BRANCH}"
|
||||
tagImage "${ORG_NAME}/${NAME}:aarch64-${SANITIZED_BRANCH_DAILY}" "${ORG_NAME}/${NAME}:aarch64-${SANITIZED_BRANCH}"
|
||||
|
||||
# Manifest tag
|
||||
manifest "${ORG_NAME}/${NAME}:${SANITIZED_BRANCH}" "${ORG_NAME}/${NAME}" "${SANITIZED_BRANCH}"
|
||||
|
||||
for MIRROR in "${REGISTRY_MIRRORS[@]}"; do
|
||||
tagImage "${ORG_NAME}/${NAME}:x86_64-${SANITIZED_BRANCH_DAILY}" "${MIRROR}/${MIRROR_ORG_NAME}/${NAME}:x86_64-${SANITIZED_BRANCH}"
|
||||
tagImage "${ORG_NAME}/${NAME}:aarch64-${SANITIZED_BRANCH_DAILY}" "${MIRROR}/${MIRROR_ORG_NAME}/${NAME}:aarch64-${SANITIZED_BRANCH}"
|
||||
|
||||
manifest "${MIRROR}/${MIRROR_ORG_NAME}/${NAME}:${SANITIZED_BRANCH}" "${MIRROR}/${MIRROR_ORG_NAME}/${NAME}" "${SANITIZED_BRANCH}"
|
||||
done
|
||||
|
||||
# Single App Layer Images
|
||||
# Disabling Single App Layer due to functionality not being used currently
|
||||
# if [ ! -z "${BASE}" ];then
|
||||
# tagImage "${ORG_NAME}/${APPS}:x86_64-${BASE}-${NAME}-${SANITIZED_BRANCH_DAILY}" "${ORG_NAME}/${APPS}:x86_64-${BASE}-${NAME}-${SANITIZED_BRANCH}"
|
||||
# tagImage "${ORG_NAME}/${APPS}:aarch64-${BASE}-${NAME}-${SANITIZED_BRANCH_DAILY}" "${ORG_NAME}/${APPS}:aarch64-${BASE}-${NAME}-${SANITIZED_BRANCH}"
|
||||
|
||||
# manifest "${ORG_NAME}/${APPS}:${BASE}-${NAME}-${SANITIZED_BRANCH}" "${ORG_NAME}/${APPS}" "${BASE}-${NAME}-${SANITIZED_BRANCH}"
|
||||
# fi
|
||||
# Single arch image just pull and push
|
||||
else
|
||||
tagImage "${ORG_NAME}/${NAME}:${SANITIZED_BRANCH_DAILY}" "${ORG_NAME}/${NAME}:${SANITIZED_BRANCH}"
|
||||
|
||||
for MIRROR in "${REGISTRY_MIRRORS[@]}"; do
|
||||
tagImage "${ORG_NAME}/${NAME}:${SANITIZED_BRANCH_DAILY}" "${MIRROR}/${MIRROR_ORG_NAME}/${NAME}:${SANITIZED_BRANCH}"
|
||||
done
|
||||
|
||||
# Single App Layer Images
|
||||
# Disabling Single App Layer due to functionality not being used currently
|
||||
# if [ ! -z "${BASE}" ];then
|
||||
# tagImage "${ORG_NAME}/${APPS}:${BASE}-${NAME}-${SANITIZED_BRANCH_DAILY}" "${ORG_NAME}/${APPS}:x86_64-${BASE}-${NAME}-${SANITIZED_BRANCH}"
|
||||
# fi
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue