Last active
July 1, 2024 10:09
-
-
Save pvalena/70ae59e37cad42586f31dee977cc876b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| .distro/dracut.spec | 9 ++- | |
| .distro/source-git.yaml | 6 +- | |
| .github/labeler.yml | 20 +++++ | |
| .github/workflows/container.yml | 16 ++-- | |
| .github/workflows/integration.yml | 157 +++++++++++++++++++++++++++++++------- | |
| .github/workflows/manualtest.yml | 4 +- | |
| .packit.yml | 2 +- | |
| modules.d/90crypt/parse-crypt.sh | 2 +- | |
| 8 files changed, 173 insertions(+), 43 deletions(-) | |
| diff --git a/.distro/dracut.spec b/.distro/dracut.spec | |
| index 829a46dd..fc5d8090 100644 | |
| --- a/.distro/dracut.spec | |
| +++ b/.distro/dracut.spec | |
| @@ -7,7 +7,7 @@ | |
| %global __requires_exclude pkg-config | |
| Name: dracut | |
| -Version: 101 | |
| +Version: 102 | |
| Release: 1%{?dist} | |
| Summary: Initramfs generator using udev | |
| @@ -253,6 +253,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/ | |
| %{dracutlibdir}/modules.d/01fips | |
| %{dracutlibdir}/modules.d/01systemd-ac-power | |
| %{dracutlibdir}/modules.d/01systemd-ask-password | |
| +%{dracutlibdir}/modules.d/01systemd-bsod | |
| %{dracutlibdir}/modules.d/01systemd-coredump | |
| %{dracutlibdir}/modules.d/01systemd-creds | |
| %{dracutlibdir}/modules.d/01systemd-hostnamed | |
| @@ -305,9 +306,12 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/ | |
| %{dracutlibdir}/modules.d/90mdraid | |
| %{dracutlibdir}/modules.d/90multipath | |
| %{dracutlibdir}/modules.d/90nvdimm | |
| +%{dracutlibdir}/modules.d/90numlock | |
| %{dracutlibdir}/modules.d/90overlayfs | |
| %{dracutlibdir}/modules.d/90ppcmac | |
| +%{dracutlibdir}/modules.d/90pcmcia | |
| %{dracutlibdir}/modules.d/90qemu | |
| +%{dracutlibdir}/modules.d/90systemd-cryptsetup | |
| %{dracutlibdir}/modules.d/91crypt-gpg | |
| %{dracutlibdir}/modules.d/91crypt-loop | |
| %{dracutlibdir}/modules.d/91fido2 | |
| @@ -422,6 +426,9 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/ | |
| %{_prefix}/lib/kernel/install.d/51-dracut-rescue.install | |
| %changelog | |
| +* Tue Jun 04 2024 Pavel Valena <pvalena@redhat.com> - 102-1 | |
| +- Update to dracut 102. | |
| + | |
| * Thu May 16 2024 Pavel Valena <pvalena@redhat.com> - 101-1 | |
| - Update to dracut 101. | |
| diff --git a/.distro/source-git.yaml b/.distro/source-git.yaml | |
| index 7df58107..7b2df132 100644 | |
| --- a/.distro/source-git.yaml | |
| +++ b/.distro/source-git.yaml | |
| @@ -1,5 +1,5 @@ | |
| upstream_project_url: git@github.com:dracut-ng/dracut-ng.git | |
| -upstream_ref: 2255bf3464536b02342d13398c5331999fcfd4fa | |
| +upstream_ref: 1a8ee6e00bbe017717a5ef9e9bcfefb3b88f629e | |
| downstream_package_name: dracut | |
| specfile_path: .distro/dracut.spec | |
| patch_generation_ignore_paths: | |
| @@ -18,5 +18,5 @@ files_to_sync: | |
| - exclude source-git.yaml | |
| - exclude .gitignore | |
| sources: | |
| -- path: dracut-ng-101.tar.gz | |
| - url: https://github.com/dracut-ng/dracut-ng/archive/refs/tags/101.tar.gz | |
| +- path: dracut-ng-102.tar.gz | |
| + url: https://github.com/dracut-ng/dracut-ng/archive/refs/tags/102.tar.gz | |
| diff --git a/.github/labeler.yml b/.github/labeler.yml | |
| index f70e1a83..0cea58c2 100644 | |
| --- a/.github/labeler.yml | |
| +++ b/.github/labeler.yml | |
| @@ -78,6 +78,10 @@ systemd-ask-password: | |
| - changed-files: | |
| - any-glob-to-any-file: 'modules.d/01systemd-ask-password/*' | |
| +systemd-bsod: | |
| + - changed-files: | |
| + - any-glob-to-any-file: 'modules.d/01systemd-bsod/*' | |
| + | |
| systemd-coredump: | |
| - changed-files: | |
| - any-glob-to-any-file: 'modules.d/01systemd-coredump/*' | |
| @@ -114,6 +118,10 @@ systemd-networkd: | |
| - changed-files: | |
| - any-glob-to-any-file: 'modules.d/01systemd-networkd/*' | |
| +systemd-network-management: | |
| + - changed-files: | |
| + - any-glob-to-any-file: 'modules.d/00systemd-network-management/*' | |
| + | |
| systemd-pcrphase: | |
| - changed-files: | |
| - any-glob-to-any-file: 'modules.d/01systemd-pcrphase/*' | |
| @@ -322,6 +330,10 @@ multipath: | |
| - changed-files: | |
| - any-glob-to-any-file: 'modules.d/90multipath/*' | |
| +numlock: | |
| + - changed-files: | |
| + - any-glob-to-any-file: 'modules.d/90numlock/*' | |
| + | |
| nvdimm: | |
| - changed-files: | |
| - any-glob-to-any-file: 'modules.d/90nvdimm/*' | |
| @@ -342,6 +354,10 @@ qemu-net: | |
| - changed-files: | |
| - any-glob-to-any-file: 'modules.d/90qemu-net/*' | |
| +systemd-cryptsetup: | |
| + - changed-files: | |
| + - any-glob-to-any-file: 'modules.d/90systemd-cryptsetup/*' | |
| + | |
| crypt-gpg: | |
| - changed-files: | |
| - any-glob-to-any-file: 'modules.d/91crypt-gpg/*' | |
| @@ -534,6 +550,10 @@ net-lib: | |
| - changed-files: | |
| - any-glob-to-any-file: 'modules.d/45net-lib/*' | |
| +pcmcia: | |
| + - changed-files: | |
| + - any-glob-to-any-file: 'modules.d/90pcmcia/*' | |
| + | |
| test: | |
| - changed-files: | |
| - any-glob-to-any-file: ['test/*', 'test/**/*', 'modules.d/80test*', 'modules.d/80test*/*'] | |
| diff --git a/.github/workflows/container.yml b/.github/workflows/container.yml | |
| index 25da3edc..931ec298 100644 | |
| --- a/.github/workflows/container.yml | |
| +++ b/.github/workflows/container.yml | |
| @@ -18,19 +18,22 @@ permissions: | |
| contents: read | |
| jobs: | |
| - push_to_registry: | |
| - if: github.repository == 'dracut-ng/dracut-ng' || vars.CONTAINER == 'enabled' | |
| - name: Build and push containers image to GitHub Packages | |
| + arm64: | |
| + name: ${{ matrix.config.tag }} on ${{ matrix.config.platform }} | |
| runs-on: ubuntu-latest | |
| concurrency: | |
| - group: ${{ github.workflow }}-${{ github.ref }}-${{ matrix.config.dockerfile }} | |
| + group: arm64-${{ github.workflow }}-${{ github.ref }}-${{ matrix.config.dockerfile }} | |
| cancel-in-progress: true | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| config: | |
| - - { dockerfile: 'Dockerfile-Fedora-latest', tag: 'fedora:latest' } | |
| + - { dockerfile: 'Dockerfile-Fedora-latest', tag: 'fedora', platform: 'linux/arm64,linux/amd64' } | |
| steps: | |
| + - name: Set up QEMU | |
| + uses: docker/setup-qemu-action@v3 | |
| + with: | |
| + platforms: ${{ matrix.config.platform }} | |
| - name: Check out the repo | |
| uses: actions/checkout@v4 | |
| - name: Set up Docker Buildx | |
| @@ -47,5 +50,6 @@ jobs: | |
| uses: docker/build-push-action@v5 | |
| with: | |
| file: test/container/${{ matrix.config.dockerfile }} | |
| - tags: ghcr.io/${{ github.repository_owner }}/${{ matrix.config.tag }} | |
| + tags: ghcr.io/${{ github.repository_owner }}/${{ matrix.config.tag }}:latest | |
| push: ${{ github.event_name == 'push' || github.event_name == 'schedule' }} | |
| + platforms: ${{ matrix.config.platform }} | |
| diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml | |
| index 08ab03d2..d32e6bb5 100644 | |
| --- a/.github/workflows/integration.yml | |
| +++ b/.github/workflows/integration.yml | |
| @@ -8,12 +8,12 @@ env: | |
| DEBUGFAIL: "${{ secrets.ACTIONS_STEP_DEBUG && 'rd.debug' }}" | |
| jobs: | |
| - test: | |
| + basic: | |
| name: ${{ matrix.test }} on ${{ matrix.container }} | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 45 | |
| concurrency: | |
| - group: ${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }} | |
| + group: basic-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }} | |
| cancel-in-progress: true | |
| strategy: | |
| matrix: | |
| @@ -22,6 +22,116 @@ jobs: | |
| ] | |
| test: [ | |
| "01", | |
| + ] | |
| + fail-fast: false | |
| + container: | |
| + image: ghcr.io/dracut-ng/${{ matrix.container }} | |
| + options: "--privileged -v /dev:/dev" | |
| + steps: | |
| + - name: "Checkout Repository" | |
| + uses: actions/checkout@v4 | |
| + - name: "${{ matrix.container }} TEST-${{ matrix.test }}" | |
| + run: ./tools/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} | |
| + network: | |
| + name: ${{ matrix.test }} on ${{ matrix.container }} using ${{ matrix.network }} | |
| + runs-on: ubuntu-latest | |
| + timeout-minutes: 45 | |
| + concurrency: | |
| + group: network-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-${{ matrix.network }} | |
| + cancel-in-progress: true | |
| + strategy: | |
| + matrix: | |
| + container: [ | |
| + "fedora", | |
| + ] | |
| + network: [ | |
| + "network", | |
| + ] | |
| + test: [ | |
| + "20", | |
| + "40", | |
| + "50", | |
| + "60", | |
| + ] | |
| + fail-fast: false | |
| + container: | |
| + image: ghcr.io/dracut-ng/${{ matrix.container }} | |
| + options: "--privileged -v /dev:/dev" | |
| + steps: | |
| + - name: "Checkout Repository" | |
| + uses: actions/checkout@v4 | |
| + - name: "${{ matrix.container }} TEST-${{ matrix.test }}" | |
| + run: USE_NETWORK=${{ matrix.network }} ./tools/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} | |
| + network-legacy: | |
| + name: ${{ matrix.test }} on ${{ matrix.container }} using ${{ matrix.network }} | |
| + runs-on: ubuntu-latest | |
| + timeout-minutes: 45 | |
| + concurrency: | |
| + group: network-legacy-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-${{ matrix.network }} | |
| + cancel-in-progress: true | |
| + strategy: | |
| + matrix: | |
| + container: [ | |
| + "opensuse", | |
| + ] | |
| + network: [ | |
| + "network-legacy", | |
| + ] | |
| + test: [ | |
| + "20", | |
| + "30", | |
| + "40", | |
| + ] | |
| + fail-fast: false | |
| + container: | |
| + image: ghcr.io/dracut-ng/${{ matrix.container }} | |
| + options: "--privileged -v /dev:/dev" | |
| + steps: | |
| + - name: "Checkout Repository" | |
| + uses: actions/checkout@v4 | |
| + - name: "${{ matrix.container }} TEST-${{ matrix.test }}" | |
| + run: USE_NETWORK=${{ matrix.network }} ./tools/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} | |
| + systemd-networkd: | |
| + name: ${{ matrix.test }} on ${{ matrix.container }} using ${{ matrix.network }} | |
| + runs-on: ubuntu-latest | |
| + timeout-minutes: 45 | |
| + concurrency: | |
| + group: systemd-networkd-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-${{ matrix.network }} | |
| + cancel-in-progress: true | |
| + strategy: | |
| + matrix: | |
| + container: [ | |
| + "arch", | |
| + ] | |
| + network: [ | |
| + "systemd-networkd", | |
| + ] | |
| + test: [ | |
| + "35", | |
| + "40", | |
| + ] | |
| + fail-fast: false | |
| + container: | |
| + image: ghcr.io/dracut-ng/${{ matrix.container }} | |
| + options: "--privileged -v /dev:/dev" | |
| + steps: | |
| + - name: "Checkout Repository" | |
| + uses: actions/checkout@v4 | |
| + - name: "${{ matrix.container }} TEST-${{ matrix.test }}" | |
| + run: USE_NETWORK=${{ matrix.network }} ./tools/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} | |
| + extended: | |
| + name: ${{ matrix.test }} on ${{ matrix.container }} | |
| + runs-on: ubuntu-latest | |
| + timeout-minutes: 30 | |
| + concurrency: | |
| + group: extended-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }} | |
| + cancel-in-progress: true | |
| + strategy: | |
| + matrix: | |
| + container: [ | |
| + "fedora", | |
| + ] | |
| + test: [ | |
| "02", | |
| "03", | |
| "04", | |
| @@ -44,17 +154,16 @@ jobs: | |
| steps: | |
| - name: "Checkout Repository" | |
| uses: actions/checkout@v4 | |
| - with: | |
| - fetch-depth: 0 | |
| - | |
| - name: "${{ matrix.container }} TEST-${{ matrix.test }}" | |
| run: ./tools/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} | |
| - network: | |
| - name: ${{ matrix.test }} on ${{ matrix.container }} using ${{ matrix.network }} | |
| + dracut-cpio: | |
| + name: ${{ matrix.test }} on ${{ matrix.container }} | |
| runs-on: ubuntu-latest | |
| - timeout-minutes: 45 | |
| + timeout-minutes: 30 | |
| concurrency: | |
| - group: ${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-${{ matrix.network }} | |
| + group: dracut-cpio-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }} | |
| + | |
| + | |
| cancel-in-progress: true | |
| strategy: | |
| matrix: | |
| @@ -86,38 +195,28 @@ jobs: | |
| - name: "${{ matrix.container }} TEST-${{ matrix.test }}" | |
| run: USE_NETWORK=${{ matrix.network }} ./tools/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} | |
| - network-legacy: | |
| - name: ${{ matrix.test }} on ${{ matrix.container }} using ${{ matrix.network }} | |
| + arm64: | |
| + name: ${{ matrix.test }} on ${{ matrix.container }} on arm64 | |
| runs-on: ubuntu-latest | |
| - timeout-minutes: 45 | |
| + timeout-minutes: 30 | |
| concurrency: | |
| - group: ${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-${{ matrix.network }} | |
| + group: arm64-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }} | |
| cancel-in-progress: true | |
| strategy: | |
| matrix: | |
| container: [ | |
| "fedora", | |
| ] | |
| - network: [ | |
| - "network-manager", | |
| - #"systemd-networkd", | |
| - #"connman", | |
| - ] | |
| test: [ | |
| - "20", | |
| - "30", | |
| - "35", | |
| - "40", | |
| + "98", | |
| ] | |
| fail-fast: false | |
| - container: | |
| - image: ghcr.io/${{ github.repository_owner }}/${{ matrix.container }} | |
| - options: "--privileged -v /dev:/dev" | |
| steps: | |
| + - name: Set up QEMU | |
| + uses: docker/setup-qemu-action@v3 | |
| + with: | |
| + platforms: 'linux/arm64' | |
| - name: "Checkout Repository" | |
| uses: actions/checkout@v4 | |
| - with: | |
| - fetch-depth: 0 | |
| - | |
| - name: "${{ matrix.container }} TEST-${{ matrix.test }}" | |
| - run: USE_NETWORK=${{ matrix.network }} ./tools/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} | |
| + run: docker run --platform linux/arm64 --privileged -v /dev:/dev -v $PWD:/w ghcr.io/dracut-ng/${{ matrix.container }} /w/tools/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} | |
| diff --git a/.github/workflows/manualtest.yml b/.github/workflows/manualtest.yml | |
| index 1ad5e35d..98a68deb 100644 | |
| --- a/.github/workflows/manualtest.yml | |
| +++ b/.github/workflows/manualtest.yml | |
| @@ -9,7 +9,7 @@ on: | |
| container: | |
| type: choice | |
| description: 'distro' | |
| - default: 'all' | |
| + default: 'fedora' | |
| options: | |
| - "fedora" | |
| env: | |
| @@ -30,7 +30,7 @@ jobs: | |
| tests: ${{ steps.set-matrix.outputs.tests }} | |
| steps: | |
| - name: "Checkout Repository" | |
| - uses: actions/checkout@v1 | |
| + uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - id: set-matrix | |
| diff --git a/.packit.yml b/.packit.yml | |
| index c7b82cda..7c9ca501 100644 | |
| --- a/.packit.yml | |
| +++ b/.packit.yml | |
| @@ -12,7 +12,7 @@ patch_generation_ignore_paths: | |
| patch_generation_patch_id_digits: 1 | |
| sync_changelog: true | |
| -upstream_ref: 2255bf3464536b02342d13398c5331999fcfd4fa | |
| +upstream_ref: 1a8ee6e00bbe017717a5ef9e9bcfefb3b88f629e | |
| upstream_package_name: dracut | |
| downstream_package_name: dracut | |
| diff --git a/modules.d/90crypt/parse-crypt.sh b/modules.d/90crypt/parse-crypt.sh | |
| index e46e347a..9567a4a9 100755 | |
| --- a/modules.d/90crypt/parse-crypt.sh | |
| +++ b/modules.d/90crypt/parse-crypt.sh | |
| @@ -174,7 +174,7 @@ else | |
| } >> "$hookdir/emergency/90-crypt.sh" | |
| fi | |
| done | |
| - elif getargbool 0 rd.auto; then | |
| + elif getargbool 1 rd.auto && [ -z "$(getargs rd.luks.name)" ]; then | |
| if [ -z "$DRACUT_SYSTEMD" ]; then | |
| { | |
| printf -- 'ENV{ID_FS_TYPE}=="crypto_LUKS", RUN+="%s ' "$(command -v initqueue)" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment