Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 39 additions & 78 deletions .github/workflows/update-portage-stable-packages-from-list.yaml
Original file line number Diff line number Diff line change
@@ -1,92 +1,53 @@
name: Keep portage-stable packages updated
name: Keep Gentoo submodule updated
on:
schedule:
- cron: '0 7 * * 1'
- cron: '0 4 * * 0-4'
workflow_dispatch:

jobs:
keep-packages-updated:
keep-gentoo-updated:
runs-on: ubuntu-latest
steps:
- name: Check out scripts
uses: actions/checkout@v4
uses: actions/checkout@v7
with:
token: ${{ secrets.GITHUB_TOKEN }}
path: ./scripts
- name: Check out Gentoo
uses: actions/checkout@v4
with:
repository: gentoo/gentoo
path: gentoo
# Gentoo is quite a large repo, so limit ourselves to last
# quarter milion of commits. It is about two years worth of changes.
# Is is needed by the sync script to find out the hash of the last commit
# that made the changes to the package.
fetch-depth: 250000
ref: master
- name: Check out build scripts
uses: actions/checkout@v4
with:
repository: flatcar/flatcar-build-scripts
path: flatcar-build-scripts
- name: Update listed packages
id: update-listed-packages
token: ${{ secrets.BOT_PR_TOKEN }}
path: scripts
sparse-checkout: |
.gitmodules
.github/workflows/common.sh
sparse-checkout-cone-mode: false
- name: Update Gentoo submodule
id: update-gentoo
env:
WORK_SCRIPTS_DIR: "${{ github.workspace }}/scripts"
run: |
git config --global user.name "Flatcar Buildbot"
git config --global user.email "buildbot@flatcar-linux.org"
old_head=$(git -C scripts rev-parse HEAD)
packages_list=$(realpath scripts/.github/workflows/portage-stable-packages-list)
gentoo_repo=$(realpath gentoo)
build_scripts=$(realpath flatcar-build-scripts)
pushd scripts/sdk_container/src/third_party/portage-stable
while read -r package; do
if [[ ! -e "${package}" ]]; then
# If this happens, it means that the package was moved to overlay
# or dropped, the list ought to be updated.
echo "::warning title=${package}::Nonexistent package"
continue
fi
if [[ ! -e "${gentoo_repo}/${package}" ]]; then
# If this happens, it means that the package was obsoleted or moved
# in Gentoo. The obsoletion needs to be handled in the case-by-case
# manner, while move should be handled by doing the same move
# in portage-stable. The build should not break because of the move,
# because most likely it's already reflected in the profiles/updates
# directory.
echo "::warning title=${package}::Obsolete or moved package"
continue
fi
GENTOO_REPO="${gentoo_repo}" "${build_scripts}/sync-with-gentoo" "${package}"
done < <(grep '^[^#]' "${packages_list}")
popd
new_head=$(git -C scripts rev-parse HEAD)
updated=0
if [[ "${new_head}" != "${old_head}" ]]; then
updated=1
set -euo pipefail
source scripts/.github/workflows/common.sh
prepare_git_repo
submodule=sdk_container/src/third_party/gentoo
url=$(git -C "${WORK_SCRIPTS_DIR}" config --file .gitmodules --get "submodule.${submodule}.url")
branch=$(git -C "${WORK_SCRIPTS_DIR}" config --file .gitmodules --get "submodule.${submodule}.branch")
read -r latest_commit _ < <(git ls-remote --exit-code "${url}" "refs/heads/${branch}")
short_commit=${latest_commit:0:12}
git -C "${WORK_SCRIPTS_DIR}" update-index --cacheinfo "160000,${latest_commit},${submodule}"
if git -C "${WORK_SCRIPTS_DIR}" diff --cached --quiet -- "${submodule}"; then
echo 'UPDATE_NEEDED=0' >>"${GITHUB_OUTPUT}"
exit 0
fi
todaydate=$(date +%Y-%m-%d)
echo "UPDATED=${updated}" >>"${GITHUB_OUTPUT}"
echo "TODAYDATE=${todaydate}" >>"${GITHUB_OUTPUT}"
- name: Create pull request for main branch
uses: peter-evans/create-pull-request@v6
if: steps.update-listed-packages.outputs.UPDATED == 1
git -C "${WORK_SCRIPTS_DIR}" commit --signoff -m "gentoo: Update to ${short_commit}"
cleanup_repo
echo 'UPDATE_NEEDED=1' >>"${GITHUB_OUTPUT}"
echo "LATEST_COMMIT=${latest_commit}" >>"${GITHUB_OUTPUT}"
echo "SHORT_COMMIT=${short_commit}" >>"${GITHUB_OUTPUT}"
- name: Create pull request
uses: peter-evans/create-pull-request@v8
if: steps.update-gentoo.outputs.UPDATE_NEEDED == 1
with:
token: ${{ secrets.GITHUB_TOKEN }}
token: ${{ secrets.BOT_PR_TOKEN }}
path: scripts
branch: buildbot/weekly-portage-stable-package-updates-${{steps.update-listed-packages.outputs.TODAYDATE }}
branch: buildbot/update-gentoo-submodule
delete-branch: true
base: main
title: Weekly portage-stable package updates ${{steps.update-listed-packages.outputs.TODAYDATE }}
body: |
CI: TODO

--

TODO: Changes.

--

- [ ] changelog
- [ ] image diff
labels: main
draft: true
title: Update gentoo submodule to ${{ steps.update-gentoo.outputs.SHORT_COMMIT }}
body: Update `sdk_container/src/third_party/gentoo` to flatcar-hub/gentoo@${{ steps.update-gentoo.outputs.LATEST_COMMIT }}.
labels: auto-ci,auto-jenkins,main
1 change: 1 addition & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
[submodule "sdk_container/src/third_party/gentoo"]
path = sdk_container/src/third_party/gentoo
url = https://github.com/flatcar-hub/gentoo.git
branch = master
shallow = true
2 changes: 1 addition & 1 deletion sdk_container/src/third_party/gentoo
Submodule gentoo updated 91 files
+1 −0 app-emulation/virtualbox-additions/Manifest
+26 −0 app-emulation/virtualbox-additions/virtualbox-additions-7.2.18.ebuild
+1 −0 app-emulation/virtualbox-extpack-oracle/Manifest
+33 −0 app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-7.2.18.ebuild
+1 −0 app-emulation/virtualbox-guest-additions/Manifest
+256 −0 app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.2.18.ebuild
+1 −0 app-emulation/virtualbox-guest-modules/Manifest
+48 −0 app-emulation/virtualbox-guest-modules/virtualbox-guest-modules-7.2.18.ebuild
+2 −0 app-emulation/virtualbox-kvm/Manifest
+795 −0 app-emulation/virtualbox-kvm/virtualbox-kvm-7.2.18_pre20260201.ebuild
+1 −0 app-emulation/virtualbox-modules/Manifest
+35 −0 app-emulation/virtualbox-modules/virtualbox-modules-7.2.18.ebuild
+2 −0 app-emulation/virtualbox/Manifest
+785 −0 app-emulation/virtualbox/virtualbox-7.2.18.ebuild
+2 −0 dev-python/filelock/Manifest
+38 −0 dev-python/filelock/filelock-4.0.0.ebuild
+1 −1 dev-python/gst-python/gst-python-1.26.11.ebuild
+1 −0 dev-python/hcloud/Manifest
+51 −0 dev-python/hcloud/hcloud-2.25.1.ebuild
+2 −0 dev-python/idna/Manifest
+31 −0 dev-python/idna/idna-3.20.ebuild
+1 −1 dev-python/pdm/Manifest
+4 −0 dev-python/pdm/pdm-2.29.2.ebuild
+1 −0 dev-python/pymysql/Manifest
+110 −0 dev-python/pymysql/pymysql-1.2.3.ebuild
+1 −1 dev-python/pytest-rerunfailures/Manifest
+1 −1 dev-python/pytest-rerunfailures/pytest-rerunfailures-16.7.ebuild
+1 −0 dev-python/python-pam/Manifest
+30 −0 dev-python/python-pam/python-pam-2.1.0.ebuild
+2 −0 dev-python/tox/Manifest
+84 −0 dev-python/tox/tox-4.61.5.ebuild
+1 −0 dev-python/types-docutils/Manifest
+16 −0 dev-python/types-docutils/types-docutils-0.23.0.20260917.ebuild
+2 −2 dev-python/urwid/Manifest
+2 −2 dev-python/urwid/urwid-4.1.4.ebuild
+59 −1 llvm-core/flang/flang-24.0.0.9999.ebuild
+7 −5 llvm-runtimes/clang-runtime/clang-runtime-24.ebuild
+32 −4 llvm-runtimes/openmp/openmp-24.0.0.9999.ebuild
+126 −0 mail-client/thunderbird-l10n/Manifest
+145 −0 mail-client/thunderbird-l10n/thunderbird-l10n-153.3.0.ebuild
+145 −0 mail-client/thunderbird-l10n/thunderbird-l10n-156.0.ebuild
+68 −0 mail-client/thunderbird/Manifest
+1,168 −0 mail-client/thunderbird/thunderbird-140.16.0.ebuild
+1,120 −0 mail-client/thunderbird/thunderbird-153.3.0.ebuild
+1,116 −0 mail-client/thunderbird/thunderbird-156.0.ebuild
+1 −1 media-libs/gst-plugins-bad/gst-plugins-bad-1.26.11.ebuild
+1 −1 media-libs/gst-plugins-base/gst-plugins-base-1.26.11.ebuild
+1 −1 media-libs/gst-plugins-good/gst-plugins-good-1.26.11.ebuild
+1 −1 media-libs/gst-plugins-ugly/gst-plugins-ugly-1.26.11.ebuild
+1 −1 media-libs/gstreamer/gstreamer-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-a52dec/gst-plugins-a52dec-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-adaptivedemux2/gst-plugins-adaptivedemux2-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-assrender/gst-plugins-assrender-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-cdio/gst-plugins-cdio-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-cdparanoia/gst-plugins-cdparanoia-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-chromaprint/gst-plugins-chromaprint-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-dvb/gst-plugins-dvb-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-dvdread/gst-plugins-dvdread-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-flac/gst-plugins-flac-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-gdkpixbuf/gst-plugins-gdkpixbuf-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-gtk/gst-plugins-gtk-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-jack/gst-plugins-jack-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-jpeg/gst-plugins-jpeg-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-ldac/gst-plugins-ldac-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-libav/gst-plugins-libav-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-libpng/gst-plugins-libpng-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-meta/gst-plugins-meta-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-modplug/gst-plugins-modplug-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-mpeg2dec/gst-plugins-mpeg2dec-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-mpg123/gst-plugins-mpg123-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-openaptx/gst-plugins-openaptx-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-opus/gst-plugins-opus-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-oss/gst-plugins-oss-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-pulse/gst-plugins-pulse-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-qt6/gst-plugins-qt6-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-resindvd/gst-plugins-resindvd-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-soup/gst-plugins-soup-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-srtp/gst-plugins-srtp-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-taglib/gst-plugins-taglib-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-v4l2/gst-plugins-v4l2-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-vaapi/gst-plugins-vaapi-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-vpx/gst-plugins-vpx-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-webp/gst-plugins-webp-1.26.11.ebuild
+1 −1 media-plugins/gst-plugins-x264/gst-plugins-x264-1.26.11.ebuild
+10 −0 net-libs/nodejs/files/nodejs-26.8.2-add-missing-funcational-inc.patch
+317 −0 net-libs/nodejs/nodejs-26.8.2-r2.ebuild
+1 −1 sci-ml/ggml/Manifest
+0 −0 sci-ml/ggml/ggml-0.24.0.ebuild
+3 −3 sci-ml/ollama/Manifest
+1 −1 sci-ml/ollama/ollama-0.34.1.ebuild
+1 −1 sec-keys/openpgp-keys-tpm/openpgp-keys-tpm-20260324.ebuild
Loading