diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 1cc87cd29d..c6b736d147 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -18,25 +18,25 @@ env: ACTION_LINTS_TOOLCHAIN: 1.60.0 jobs: - build: - name: "Build" - runs-on: ubuntu-latest - container: registry.ci.openshift.org/coreos/fcos-buildroot:testing-devel - steps: - - name: Checkout repository - uses: actions/checkout@v3 - # https://github.com/actions/checkout/issues/760 - - name: Mark git checkout as safe - run: git config --global --add safe.directory "$GITHUB_WORKSPACE" - - name: Codestyle - run: ./ci/codestyle.sh - - name: Build - run: ./ci/build.sh && make install DESTDIR=$(pwd)/install && tar -C install -czf install.tar . - - name: Upload binary - uses: actions/upload-artifact@v3 - with: - name: install.tar - path: install.tar + # build: + # name: "Build" + # runs-on: ubuntu-latest + # container: registry.ci.openshift.org/coreos/fcos-buildroot:testing-devel + # steps: + # - name: Checkout repository + # uses: actions/checkout@v3 + # # https://github.com/actions/checkout/issues/760 + # - name: Mark git checkout as safe + # run: git config --global --add safe.directory "$GITHUB_WORKSPACE" + # - name: Codestyle + # run: ./ci/codestyle.sh + # - name: Build + # run: ./ci/build.sh && make install DESTDIR=$(pwd)/install && tar -C install -czf install.tar . + # - name: Upload binary + # uses: actions/upload-artifact@v3 + # with: + # name: install.tar + # path: install.tar build-tests: name: "Build Integration Test Data" runs-on: ubuntu-latest @@ -60,18 +60,18 @@ jobs: with: name: tests.tar path: tests.tar - cxx-verify: - name: "Verify CXX generation" - runs-on: ubuntu-latest - container: registry.ci.openshift.org/coreos/fcos-buildroot:testing-devel - steps: - - name: Checkout repository - uses: actions/checkout@v3 - # https://github.com/actions/checkout/issues/760 - - name: Mark git checkout as safe - run: git config --global --add safe.directory "$GITHUB_WORKSPACE" - - name: Codestyle - run: ./ci/verify-cxx.sh + # cxx-verify: + # name: "Verify CXX generation" + # runs-on: ubuntu-latest + # container: registry.ci.openshift.org/coreos/fcos-buildroot:testing-devel + # steps: + # - name: Checkout repository + # uses: actions/checkout@v3 + # # https://github.com/actions/checkout/issues/760 + # - name: Mark git checkout as safe + # run: git config --global --add safe.directory "$GITHUB_WORKSPACE" + # - name: Codestyle + # run: ./ci/verify-cxx.sh # TODO: Enable this once we've switched closer to having `cargo build` # be the primary buildsystem entrypoint. Right now the problem is # in order to build the libdnf-sys dependency it relies on us having @@ -97,32 +97,32 @@ jobs: # run: cargo fmt -- --check -l # - name: cargo clippy (warnings) # run: cargo clippy -- -D warnings - build-clang: - name: "Build (clang)" - runs-on: ubuntu-latest - container: registry.ci.openshift.org/coreos/fcos-buildroot:testing-devel - steps: - - name: Checkout repository - uses: actions/checkout@v3 - # https://github.com/actions/checkout/issues/760 - - name: Mark git checkout as safe - run: git config --global --add safe.directory "$GITHUB_WORKSPACE" - - name: Build - run: ./ci/clang-build-check.sh + # build-clang: + # name: "Build (clang)" + # runs-on: ubuntu-latest + # container: registry.ci.openshift.org/coreos/fcos-buildroot:testing-devel + # steps: + # - name: Checkout repository + # uses: actions/checkout@v3 + # # https://github.com/actions/checkout/issues/760 + # - name: Mark git checkout as safe + # run: git config --global --add safe.directory "$GITHUB_WORKSPACE" + # - name: Build + # run: ./ci/clang-build-check.sh integration: name: "Container Integration" - needs: [build, build-tests] + needs: [build-tests] runs-on: ubuntu-latest container: quay.io/fedora/fedora-coreos:testing-devel steps: - name: Checkout repository uses: actions/checkout@v3 - - name: Download build - uses: actions/download-artifact@v3 - with: - name: install.tar - - name: Install - run: tar -C / -xzvf install.tar && rm -f install.tar + # - name: Download build + # uses: actions/download-artifact@v3 + # with: + # name: install.tar + # - name: Install + # run: tar -C / -xzvf install.tar && rm -f install.tar - name: Download tests uses: actions/download-artifact@v3 with: @@ -132,130 +132,130 @@ jobs: - name: Integration tests run: ./ci/test-container.sh # Try to keep this in sync with https://github.com/ostreedev/ostree-rs-ext/blob/1fc115a760eeada22599e0f57026f58b22efded4/.github/workflows/rust.yml#L163 - container-build: - name: "Container build" - needs: build - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - name: Checkout coreos-layering-examples - uses: actions/checkout@v3 - with: - repository: coreos/coreos-layering-examples - path: coreos-layering-examples - - name: Download - uses: actions/download-artifact@v3 - with: - name: install.tar - - name: Integration tests - run: ./ci/container-build-integration.sh - cargo-deny: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: EmbarkStudios/cargo-deny-action@v1 - with: - log-level: warn - command: check bans sources licenses - compose: - name: "Compose tests" - needs: build - runs-on: ubuntu-latest - container: - image: registry.ci.openshift.org/coreos/coreos-assembler:latest - options: "--user root --privileged -v /var/tmp:/var/tmp" - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - name: Install test dependencies - run: ./ci/install-test-deps.sh - - name: Download build - uses: actions/download-artifact@v3 - with: - name: install.tar - - name: Install - run: tar -C / -xzvf install.tar - - name: Integration tests - run: env TMPDIR=/var/tmp JOBS=3 ./tests/compose.sh - compose-image: - name: "compose-image tests" - needs: build - runs-on: ubuntu-latest - container: - image: registry.ci.openshift.org/coreos/coreos-assembler:latest - options: "--user root --privileged -v /var/tmp:/var/tmp" - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - name: Install test dependencies - run: ./ci/install-test-deps.sh - - name: Download build - uses: actions/download-artifact@v3 - with: - name: install.tar - - name: Install - run: tar -C / -xzvf install.tar - - name: Integration tests - run: env TMPDIR=/var/tmp JOBS=3 ./tests/compose-image.sh - container-encapsulate: - name: "Encapsulate tests" - needs: build - runs-on: ubuntu-latest - container: - image: registry.ci.openshift.org/coreos/coreos-assembler:latest - options: "--user root --privileged -v /var/tmp:/var/tmp" - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - name: Download build - uses: actions/download-artifact@v3 - with: - name: install.tar - - name: Install - run: tar -C / -xzvf install.tar - - name: Integration tests - run: env TMPDIR=/var/tmp ./tests/encapsulate.sh - build-c9s: - name: "Build (c9s)" - runs-on: ubuntu-latest - container: quay.io/centos/centos:stream9 - steps: - - name: Install git - run: yum -y install git - - name: Checkout repository - uses: actions/checkout@v3 - with: - submodules: true - # https://github.com/actions/checkout/issues/760 - - name: Mark git checkout as safe - run: git config --global --add safe.directory "$GITHUB_WORKSPACE" - - name: Run ridiculous RHEL -devel package workaround - run: ./ci/ridiculous-rhel-devel-workaround.sh - - name: Install dependencies - run: ./ci/installdeps.sh - - name: Build - run: ./ci/build.sh && make install DESTDIR=$(pwd)/install && tar -C install -czf install.tar . - - name: Upload binary - uses: actions/upload-artifact@v3 - with: - name: install-c9s.tar - path: install.tar - # Doc: https://github.com/redhat-plumbers-in-action/differential-shellcheck#usage - differential-shellcheck: - name: Differential ShellCheck - runs-on: ubuntu-latest + # container-build: + # name: "Container build" + # needs: build + # runs-on: ubuntu-latest + # steps: + # - name: Checkout repository + # uses: actions/checkout@v3 + # - name: Checkout coreos-layering-examples + # uses: actions/checkout@v3 + # with: + # repository: coreos/coreos-layering-examples + # path: coreos-layering-examples + # - name: Download + # uses: actions/download-artifact@v3 + # with: + # name: install.tar + # - name: Integration tests + # run: ./ci/container-build-integration.sh + # cargo-deny: + # runs-on: ubuntu-latest + # steps: + # - uses: actions/checkout@v3 + # - uses: EmbarkStudios/cargo-deny-action@v1 + # with: + # log-level: warn + # command: check bans sources licenses + # compose: + # name: "Compose tests" + # needs: build + # runs-on: ubuntu-latest + # container: + # image: registry.ci.openshift.org/coreos/coreos-assembler:latest + # options: "--user root --privileged -v /var/tmp:/var/tmp" + # steps: + # - name: Checkout repository + # uses: actions/checkout@v3 + # - name: Install test dependencies + # run: ./ci/install-test-deps.sh + # - name: Download build + # uses: actions/download-artifact@v3 + # with: + # name: install.tar + # - name: Install + # run: tar -C / -xzvf install.tar + # - name: Integration tests + # run: env TMPDIR=/var/tmp JOBS=3 ./tests/compose.sh + # compose-image: + # name: "compose-image tests" + # needs: build + # runs-on: ubuntu-latest + # container: + # image: registry.ci.openshift.org/coreos/coreos-assembler:latest + # options: "--user root --privileged -v /var/tmp:/var/tmp" + # steps: + # - name: Checkout repository + # uses: actions/checkout@v3 + # - name: Install test dependencies + # run: ./ci/install-test-deps.sh + # - name: Download build + # uses: actions/download-artifact@v3 + # with: + # name: install.tar + # - name: Install + # run: tar -C / -xzvf install.tar + # - name: Integration tests + # run: env TMPDIR=/var/tmp JOBS=3 ./tests/compose-image.sh + # container-encapsulate: + # name: "Encapsulate tests" + # needs: build + # runs-on: ubuntu-latest + # container: + # image: registry.ci.openshift.org/coreos/coreos-assembler:latest + # options: "--user root --privileged -v /var/tmp:/var/tmp" + # steps: + # - name: Checkout repository + # uses: actions/checkout@v3 + # - name: Download build + # uses: actions/download-artifact@v3 + # with: + # name: install.tar + # - name: Install + # run: tar -C / -xzvf install.tar + # - name: Integration tests + # run: env TMPDIR=/var/tmp ./tests/encapsulate.sh + # build-c9s: + # name: "Build (c9s)" + # runs-on: ubuntu-latest + # container: quay.io/centos/centos:stream9 + # steps: + # - name: Install git + # run: yum -y install git + # - name: Checkout repository + # uses: actions/checkout@v3 + # with: + # submodules: true + # # https://github.com/actions/checkout/issues/760 + # - name: Mark git checkout as safe + # run: git config --global --add safe.directory "$GITHUB_WORKSPACE" + # - name: Run ridiculous RHEL -devel package workaround + # run: ./ci/ridiculous-rhel-devel-workaround.sh + # - name: Install dependencies + # run: ./ci/installdeps.sh + # - name: Build + # run: ./ci/build.sh && make install DESTDIR=$(pwd)/install && tar -C install -czf install.tar . + # - name: Upload binary + # uses: actions/upload-artifact@v3 + # with: + # name: install-c9s.tar + # path: install.tar + # # Doc: https://github.com/redhat-plumbers-in-action/differential-shellcheck#usage + # differential-shellcheck: + # name: Differential ShellCheck + # runs-on: ubuntu-latest - permissions: - security-events: write + # permissions: + # security-events: write - steps: - - name: Checkout repository - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Differential ShellCheck - uses: redhat-plumbers-in-action/differential-shellcheck@v4 - with: - severity: warning - token: ${{ secrets.GITHUB_TOKEN }} + # steps: + # - name: Checkout repository + # uses: actions/checkout@v3 + # with: + # fetch-depth: 0 + # - name: Differential ShellCheck + # uses: redhat-plumbers-in-action/differential-shellcheck@v4 + # with: + # severity: warning + # token: ${{ secrets.GITHUB_TOKEN }} diff --git a/Cargo.lock b/Cargo.lock index 79d1334778..93c8c1e464 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -354,7 +354,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -551,9 +551,9 @@ dependencies = [ [[package]] name = "cxx" -version = "1.0.95" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109308c20e8445959c2792e81871054c6a17e6976489a93d2769641a2ba5839c" +checksum = "f68e12e817cb19eaab81aaec582b4052d07debd3c3c6b083b9d361db47c7dc9d" dependencies = [ "cc", "cxxbridge-flags", @@ -573,24 +573,24 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] name = "cxxbridge-flags" -version = "1.0.95" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "882074421238e84fe3b4c65d0081de34e5b323bf64555d3e61991f76eb64a7bb" +checksum = "78a19f4c80fd9ab6c882286fa865e92e07688f4387370a209508014ead8751d0" [[package]] name = "cxxbridge-macro" -version = "1.0.95" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a076022ece33e7686fb76513518e219cca4fce5750a8ae6d1ce6c0f48fd1af9" +checksum = "b8fcfa71f66c8563c4fa9dd2bb68368d50267856f831ac5d85367e0805f9606c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -794,7 +794,7 @@ checksum = "2cd66269887534af4b0c3e3337404591daa8dc8b9b2b3db71f9523beb4bafb41" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -830,7 +830,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -921,7 +921,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -1448,9 +1448,9 @@ dependencies = [ [[package]] name = "link-cplusplus" -version = "1.0.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" +checksum = "9d240c6f7e1ba3a28b0249f774e6a9dd0175054b52dfbb61b16eb8505c3785c9" dependencies = [ "cc", ] @@ -1715,7 +1715,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -1981,18 +1981,18 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" -version = "1.0.59" +version = "1.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6aeca18b86b413c660b781aa319e4e2648a3e6f9eadc9b47e9038e6fe9f3451b" +checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.26" +version = "1.0.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" +checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965" dependencies = [ "proc-macro2", ] @@ -2084,7 +2084,7 @@ checksum = "8d2275aab483050ab2a7364c1a46604865ee7d6906684e08db0f090acf74f9e7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -2346,7 +2346,7 @@ checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -2485,9 +2485,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.15" +version = "2.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822" +checksum = "b60f673f44a8255b9c8c657daf66a596d435f2da81a555b06dc644d080ba45e0" dependencies = [ "proc-macro2", "quote", @@ -2588,7 +2588,7 @@ checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -2662,7 +2662,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] @@ -2761,7 +2761,7 @@ checksum = "0f57e3ca2a01450b1a921183a9c9cbfda207fd822cef4ccb00a65402cbba7a74" dependencies = [ "proc-macro2", "quote", - "syn 2.0.15", + "syn 2.0.27", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index e28bb83189..3dfc4c7490 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -55,7 +55,7 @@ cap-primitives = "1.0.3" cap-tempfile = "1.0.15" chrono = { version = "0.4.26", features = ["serde"] } clap = { version = "4.3", features = ["derive"] } -cxx = "1.0.95" +cxx = "1.0.102" envsubst = "0.2.1" either = "1.8.1" env_logger = "0.10.0" diff --git a/ci/test-container.sh b/ci/test-container.sh index 0a5a0ba3e2..2a2f157726 100755 --- a/ci/test-container.sh +++ b/ci/test-container.sh @@ -6,6 +6,8 @@ fatal() { exit 1 } +rpm -Uvh https://download.copr.fedorainfracloud.org/results/@CoreOS/continuous/fedora-38-x86_64/06105345-rpm-ostree/rpm-ostree-{libs-,}2023.5.4.g1701971d-1.fc38.x86_64.rpm + repodir=/usr/lib/coreos-assembler/tests/kola/rpm-ostree/destructive/data/rpm-repos/ cat >/etc/yum.repos.d/libtest.repo <