From db5ad5b64bba27869a6f7f745b006b29e13ea914 Mon Sep 17 00:00:00 2001 From: Marc Wrobel Date: Sat, 28 Jun 2025 13:30:57 +0200 Subject: [PATCH] Always save cache (#451) Always save cache, even if one of the scripts returned an error. Also use a workflow to clear the cache instead of relying on josStorer/get-current-time@v2. --- .github/workflows/clear-cache.yml | 18 ++++++++++++++++++ .github/workflows/update.yml | 27 +++++++++++++++------------ releases/red-hat-openshift.json | 16 ++++++++++++++++ 3 files changed, 49 insertions(+), 12 deletions(-) create mode 100644 .github/workflows/clear-cache.yml diff --git a/.github/workflows/clear-cache.yml b/.github/workflows/clear-cache.yml new file mode 100644 index 00000000..5bc18b97 --- /dev/null +++ b/.github/workflows/clear-cache.yml @@ -0,0 +1,18 @@ +name: Clear Cache + +on: + workflow_dispatch: + schedule: + - cron: '0 0 * * 1' # Every Monday at 00:00 UTC + +jobs: + clear-cache: + name: Clear Cache + runs-on: ubuntu-latest + steps: + - name: Clear all caches + run: gh cache delete --all --succeed-on-no-caches + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + OWNER: ${{ github.repository_owner }} + REPO: ${{ github.event.repository.name }} diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 3a1249ba..387f99e2 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -18,20 +18,14 @@ jobs: name: Update data runs-on: ubuntu-latest steps: - - name: Get current week - uses: josStorer/get-current-time@v2 - id: current-time - with: - format: YYYY-ww # 2022-01 to 2022-52 for eg - - - name: Cache fetched repositories and HTTP requests - uses: actions/cache@v4 + # Note that the cache will be destroyed every week by .github/workflows/clear-cache.yml. + # See https://github.com/actions/cache/tree/main/save#always-save-cache. + - name: Restore repositories and HTTP requests cache + id: cache-restore + uses: actions/cache/restore@v4 with: + key: 'update-cache' path: ~/.cache - # The cache is reset on the first build of every week this way. If you wish to reset the cache manually, - # you can do it on https://github.com/endoflife-date/release-data/actions/caches or by updating - # the last part of the key below. - key: "${{ steps.current-time.outputs.formattedTime }}-2" - name: Clone self repository uses: actions/checkout@v4 @@ -76,6 +70,15 @@ jobs: commit_message: ${{ steps.update_data.outputs.commit_message }} commit_author: 'github-actions[bot] ' + # See https://github.com/actions/cache/tree/main/save#always-save-cache. + - name: Save repositories and HTTP requests cache + id: cache-save + uses: actions/cache/save@v4 + if: always() && steps.cache-restore.outputs.cache-hit != 'true' + with: + key: ${{ steps.cache-restore.outputs.cache-primary-key }} + path: ~/.cache + # we still want to easily know if something went wrong - name: Restore update.py failure if: steps.update_data.outcome != 'success' diff --git a/releases/red-hat-openshift.json b/releases/red-hat-openshift.json index 521afb6b..1744188c 100644 --- a/releases/red-hat-openshift.json +++ b/releases/red-hat-openshift.json @@ -1,6 +1,22 @@ { "releases": {}, "versions": { + "4.15.53": { + "name": "4.15.53", + "date": "2025-06-26" + }, + "4.18.18": { + "name": "4.18.18", + "date": "2025-06-25" + }, + "4.17.34": { + "name": "4.17.34", + "date": "2025-06-25" + }, + "4.19.1": { + "name": "4.19.1", + "date": "2025-06-24" + }, "4.19.0": { "name": "4.19.0", "date": "2025-06-17"