diff --git a/.gitlab/ci/pipelines/rpm_repository_full.yml b/.gitlab/ci/pipelines/rpm_repository_full.yml index 5974c09ae26b0935d56a0f2f3d32f4d4623958d9..1fc4f2e7d74b0a4fd624a7809f464447dd31c519 100644 --- a/.gitlab/ci/pipelines/rpm_repository_full.yml +++ b/.gitlab/ci/pipelines/rpm_repository_full.yml @@ -300,7 +300,7 @@ rpm_repo_fedora: GNUPGHOME: $CI_PROJECT_DIR/.gnupg PREFIX: next -oc.install_bin_fedora_93: +oc.install_bin_fedora_39: image: fedora:39 stage: publishing_tests tags: @@ -313,6 +313,19 @@ oc.install_bin_fedora_93: - ./scripts/packaging/tests/rpm/rpm-install.sh fedora 39 variables: {} +oc.install_bin_fedora_39.doc: + image: fedora:39 + stage: publishing_tests + tags: + - gcp + needs: + - rpm_repo_fedora + dependencies: [] + timeout: 60 minutes + script: + - ./docs/introduction/install-bin-rpm.sh fedora 39 + variables: {} + oc.install_bin_rockylinux_9.3: image: rockylinux:9.3 stage: publishing_tests @@ -325,3 +338,16 @@ oc.install_bin_rockylinux_9.3: script: - ./scripts/packaging/tests/rpm/rpm-install.sh rockylinux 9.3 variables: {} + +oc.install_bin_rockylinux_9.3.doc: + image: rockylinux:9.3 + stage: publishing_tests + tags: + - gcp + needs: + - rpm_repo_rockylinux + dependencies: [] + timeout: 60 minutes + script: + - ./docs/introduction/install-bin-rpm.sh rockylinux 9.3 + variables: {} diff --git a/.gitlab/ci/pipelines/rpm_repository_partial.yml b/.gitlab/ci/pipelines/rpm_repository_partial.yml index bf3a1c0817b35dd573b83845a00e46bc332f7311..a48dee94899c05e0b037391ca9a9eeb282ec2a95 100644 --- a/.gitlab/ci/pipelines/rpm_repository_partial.yml +++ b/.gitlab/ci/pipelines/rpm_repository_partial.yml @@ -172,3 +172,16 @@ oc.install_bin_rockylinux_9.3: script: - ./scripts/packaging/tests/rpm/rpm-install.sh rockylinux 9.3 variables: {} + +oc.install_bin_rockylinux_9.3.doc: + image: rockylinux:9.3 + stage: publishing_tests + tags: + - gcp + needs: + - rpm_repo_rockylinux + dependencies: [] + timeout: 60 minutes + script: + - ./docs/introduction/install-bin-rpm.sh rockylinux 9.3 + variables: {} diff --git a/.gitlab/ci/pipelines/rpm_repository_partial_auto.yml b/.gitlab/ci/pipelines/rpm_repository_partial_auto.yml index 85ad63afce9881e7899e9c8b57e2216d407d825a..fdaa3d01b933cff70f60b5c31925e1d3ed53c130 100644 --- a/.gitlab/ci/pipelines/rpm_repository_partial_auto.yml +++ b/.gitlab/ci/pipelines/rpm_repository_partial_auto.yml @@ -172,3 +172,16 @@ oc.install_bin_rockylinux_9.3: script: - ./scripts/packaging/tests/rpm/rpm-install.sh rockylinux 9.3 variables: {} + +oc.install_bin_rockylinux_9.3.doc: + image: rockylinux:9.3 + stage: publishing_tests + tags: + - gcp + needs: + - rpm_repo_rockylinux + dependencies: [] + timeout: 60 minutes + script: + - ./docs/introduction/install-bin-rpm.sh rockylinux 9.3 + variables: {} diff --git a/ci/bin/rpm_repository.ml b/ci/bin/rpm_repository.ml index bf18e75a3428a4138c16e4314555379a94fc8987..c24f7e84c39d8cd7e2c426f57e0b09984ae4ba56 100644 --- a/ci/bin/rpm_repository.ml +++ b/ci/bin/rpm_repository.ml @@ -194,10 +194,16 @@ let jobs pipeline_type = [ job_install_bin ~__POS__ - ~name:"oc.install_bin_fedora_93" + ~name:"oc.install_bin_fedora_39" ~dependencies:(Dependent [Job job_rpm_repo_fedora]) ~image:Images.fedora_39 ["./scripts/packaging/tests/rpm/rpm-install.sh fedora 39"]; + job_install_bin + ~__POS__ + ~name:"oc.install_bin_fedora_39.doc" + ~dependencies:(Dependent [Job job_rpm_repo_fedora]) + ~image:Images.fedora_39 + ["./docs/introduction/install-bin-rpm.sh fedora 39"]; ] in let test_rockylinux_packages_jobs = @@ -208,6 +214,12 @@ let jobs pipeline_type = ~dependencies:(Dependent [Job job_rpm_repo_rockylinux]) ~image:Images.rockylinux_93 ["./scripts/packaging/tests/rpm/rpm-install.sh rockylinux 9.3"]; + job_install_bin + ~__POS__ + ~name:"oc.install_bin_rockylinux_9.3.doc" + ~dependencies:(Dependent [Job job_rpm_repo_rockylinux]) + ~image:Images.rockylinux_93 + ["./docs/introduction/install-bin-rpm.sh rockylinux 9.3"]; ] in let rockylinux_jobs = diff --git a/docs/introduction/install-bin-rpm.sh b/docs/introduction/install-bin-rpm.sh new file mode 100755 index 0000000000000000000000000000000000000000..9d46ac63cc1cbddde9423ad7a8265e7130c8c548 --- /dev/null +++ b/docs/introduction/install-bin-rpm.sh @@ -0,0 +1,82 @@ +#!/bin/bash + +distribution=$1 +release=$2 + +bucket="$GCP_LINUX_PACKAGES_BUCKET" +protocol=$(head -1 script-inputs/active_protocol_versions_without_number) + +. scripts/ci/octez-packages-version.sh + +case "$RELEASETYPE" in +ReleaseCandidate | TestReleaseCandidate) + distribution="RC/${distribution}" + ;; +Release | TestRelease) + : nop + ;; +Master) + distribution="master/${distribution}" + ;; +SoftRelease) + distribution="${CI_COMMIT_TAG}/${distribution}" + ;; +TestBranch) + distribution="${CI_COMMIT_REF_NAME}/${distribution}" + ;; +*) + echo "Cannot test packages on this branch" + exit 1 + ;; +esac + +set -e +set -x + +if [ "$RELEASETYPE" = "Master" ]; then + # [add repository] + # Update and install the config-mananger plugin + dnf -y update + dnf -y install 'dnf-command(config-manager)' + + # Add the repository + dnf -y config-manager --add-repo "https://packages.nomadic-labs.com/next/$distribution/dists/$release/" + dnf -y config-manager --set-enabled devel + dnf -y update + + # Install public key + rpm --import "https://packages.nomadic-labs.com/next/$distribution/octez.asc" + # [end add repository] +else + # Update and install the config-mananger plugin + dnf -y update + dnf -y install 'dnf-command(config-manager)' + + # Add the repository + dnf -y config-manager --add-repo "https://storage.googleapis.com/$bucket/next/$distribution/dists/$release/" + dnf -y config-manager --set-enabled devel + dnf -y update + + # Install public key + rpm --import "https://storage.googleapis.com/$bucket/next/$distribution/octez.asc" + +fi + +dnf -y install sudo + +# [install tezos] +sudo dnf -y install octez-node +sudo dnf -y install octez-client +sudo dnf -y install octez-node +sudo dnf -y install octez-baker +sudo dnf -y install octez-dal-node +sudo dnf -y install octez-smart-rollup-node + +# [test executables] +octez-client --version +octez-node --version +"octez-baker-$protocol" --version +"octez-accuser-$protocol" --version + +# [test autopurge] +sudo dnf -y remove octez-node octez-client octez-baker octez-dal-node