diff --git a/.github/workflow_templates/deploy-channel.multi.yml b/.github/workflow_templates/deploy-channel.multi.yml index 4d8cf20e3d..8cd6304a31 100644 --- a/.github/workflow_templates/deploy-channel.multi.yml +++ b/.github/workflow_templates/deploy-channel.multi.yml @@ -152,8 +152,22 @@ Jobs for visual control allowed editions when approving deploy to environments. echo "enable=true" >> $GITHUB_OUTPUT fi + - name: Check cooldown for release + if: ${{ github.event.inputs.cooldown }} + env: + COOLDOWN: ${{ github.event.inputs.cooldown }} + run: | + CURRENT_TIMESTAMP=$(date +%s) + COOLDOWN_TIMESTAMP=$(date -u +%s -d "${COOLDOWN}") + if [ "$CURRENT_TIMESTAMP" -gt "$COOLDOWN_TIMESTAMP" ]; then + echo "The cooldown has expired" + exit 1 + fi + {!{ range $werfEnv := slice "CE" "EE" "FE" "BE" "SE" }!} - name: Set cooldown for release ({!{ $werfEnv }!}) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} diff --git a/.github/workflows/deploy-alpha.yml b/.github/workflows/deploy-alpha.yml index 53ca3b3eb1..c2baccca3b 100644 --- a/.github/workflows/deploy-alpha.yml +++ b/.github/workflows/deploy-alpha.yml @@ -334,8 +334,22 @@ jobs: echo "enable=true" >> $GITHUB_OUTPUT fi + - name: Check cooldown for release + if: ${{ github.event.inputs.cooldown }} + env: + COOLDOWN: ${{ github.event.inputs.cooldown }} + run: | + CURRENT_TIMESTAMP=$(date +%s) + COOLDOWN_TIMESTAMP=$(date -u +%s -d "${COOLDOWN}") + if [ "$CURRENT_TIMESTAMP" -gt "$COOLDOWN_TIMESTAMP" ]; then + echo "The cooldown has expired" + exit 1 + fi + - name: Set cooldown for release (CE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -357,6 +371,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (EE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -378,6 +394,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (FE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -399,6 +417,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (BE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -420,6 +440,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (SE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} diff --git a/.github/workflows/deploy-beta.yml b/.github/workflows/deploy-beta.yml index d5f83a8cb8..b535afc8c7 100644 --- a/.github/workflows/deploy-beta.yml +++ b/.github/workflows/deploy-beta.yml @@ -334,8 +334,22 @@ jobs: echo "enable=true" >> $GITHUB_OUTPUT fi + - name: Check cooldown for release + if: ${{ github.event.inputs.cooldown }} + env: + COOLDOWN: ${{ github.event.inputs.cooldown }} + run: | + CURRENT_TIMESTAMP=$(date +%s) + COOLDOWN_TIMESTAMP=$(date -u +%s -d "${COOLDOWN}") + if [ "$CURRENT_TIMESTAMP" -gt "$COOLDOWN_TIMESTAMP" ]; then + echo "The cooldown has expired" + exit 1 + fi + - name: Set cooldown for release (CE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -357,6 +371,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (EE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -378,6 +394,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (FE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -399,6 +417,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (BE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -420,6 +440,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (SE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} diff --git a/.github/workflows/deploy-early-access.yml b/.github/workflows/deploy-early-access.yml index ad85906fec..418c676509 100644 --- a/.github/workflows/deploy-early-access.yml +++ b/.github/workflows/deploy-early-access.yml @@ -334,8 +334,22 @@ jobs: echo "enable=true" >> $GITHUB_OUTPUT fi + - name: Check cooldown for release + if: ${{ github.event.inputs.cooldown }} + env: + COOLDOWN: ${{ github.event.inputs.cooldown }} + run: | + CURRENT_TIMESTAMP=$(date +%s) + COOLDOWN_TIMESTAMP=$(date -u +%s -d "${COOLDOWN}") + if [ "$CURRENT_TIMESTAMP" -gt "$COOLDOWN_TIMESTAMP" ]; then + echo "The cooldown has expired" + exit 1 + fi + - name: Set cooldown for release (CE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -357,6 +371,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (EE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -378,6 +394,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (FE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -399,6 +417,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (BE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -420,6 +440,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (SE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} diff --git a/.github/workflows/deploy-rock-solid.yml b/.github/workflows/deploy-rock-solid.yml index 146af87c79..7bdd667b43 100644 --- a/.github/workflows/deploy-rock-solid.yml +++ b/.github/workflows/deploy-rock-solid.yml @@ -334,8 +334,22 @@ jobs: echo "enable=true" >> $GITHUB_OUTPUT fi + - name: Check cooldown for release + if: ${{ github.event.inputs.cooldown }} + env: + COOLDOWN: ${{ github.event.inputs.cooldown }} + run: | + CURRENT_TIMESTAMP=$(date +%s) + COOLDOWN_TIMESTAMP=$(date -u +%s -d "${COOLDOWN}") + if [ "$CURRENT_TIMESTAMP" -gt "$COOLDOWN_TIMESTAMP" ]; then + echo "The cooldown has expired" + exit 1 + fi + - name: Set cooldown for release (CE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -357,6 +371,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (EE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -378,6 +394,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (FE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -399,6 +417,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (BE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -420,6 +440,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (SE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} diff --git a/.github/workflows/deploy-stable.yml b/.github/workflows/deploy-stable.yml index 4d58adac8f..1e52811ee7 100644 --- a/.github/workflows/deploy-stable.yml +++ b/.github/workflows/deploy-stable.yml @@ -334,8 +334,22 @@ jobs: echo "enable=true" >> $GITHUB_OUTPUT fi + - name: Check cooldown for release + if: ${{ github.event.inputs.cooldown }} + env: + COOLDOWN: ${{ github.event.inputs.cooldown }} + run: | + CURRENT_TIMESTAMP=$(date +%s) + COOLDOWN_TIMESTAMP=$(date -u +%s -d "${COOLDOWN}") + if [ "$CURRENT_TIMESTAMP" -gt "$COOLDOWN_TIMESTAMP" ]; then + echo "The cooldown has expired" + exit 1 + fi + - name: Set cooldown for release (CE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -357,6 +371,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (EE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -378,6 +394,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (FE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -399,6 +417,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (BE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}} @@ -420,6 +440,8 @@ jobs: echo "⚓️ 📤 [$(date -u)] Push '${SOURCE_RELEASE_VERSION_IMAGE}' image with cooldown." docker image push ${SOURCE_RELEASE_VERSION_IMAGE} - name: Set cooldown for release (SE) + needs: + - Check cooldown for release if: ${{ github.event.inputs.cooldown }} env: DECKHOUSE_REGISTRY_HOST: ${{secrets.DECKHOUSE_REGISTRY_HOST}}