CI: add Rocky Linux 8
Testing containerd on an EL8 variant will be beneficial for enterprise users. EL9 is coming soon, but we should keep maintaining EL8 CI for a couple of years for long-time stability. Fixes issue 6542 Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
This commit is contained in:
		
							
								
								
									
										16
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							| @@ -509,17 +509,20 @@ jobs: | ||||
|           path: | | ||||
|             *-junit.xml | ||||
|  | ||||
|   cgroup2: | ||||
|     name: CGroupsV2 - SELinux enforced | ||||
|   vagrant: | ||||
|     name: Vagrant | ||||
|     # nested virtualization is only available on macOS hosts | ||||
|     runs-on: macos-10.15 | ||||
|     timeout-minutes: 45 | ||||
|     needs: [project, linters, protos, man] | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         # Currently crun is disabled to decrease CI flakiness. | ||||
|         # We can enable crun again when we get a better CI infra. | ||||
|         runc: [runc] | ||||
|         # Fedora is for testing cgroup v2 functionality, Rocky Linux is for testing on an enterprise-grade environment | ||||
|         box: ["fedora/35-cloud-base", "rockylinux/8"] | ||||
|     env: | ||||
|       GOTEST: gotestsum -- | ||||
|     steps: | ||||
| @@ -532,7 +535,13 @@ jobs: | ||||
|           key: vagrant-${{ hashFiles('Vagrantfile*') }} | ||||
|  | ||||
|       - name: Vagrant start | ||||
|         env: | ||||
|           BOX: ${{ matrix.box }} | ||||
|         run: | | ||||
|           if [ "$BOX" = "rockylinux/8" ]; then | ||||
|             # The latest version 5.0.0 seems 404 (as of March 30, 2022) | ||||
|             export BOX_VERSION="4.0.0" | ||||
|           fi | ||||
|           # Retry if it fails (download.fedoraproject.org returns 404 sometimes) | ||||
|           vagrant up || vagrant up | ||||
|  | ||||
| @@ -565,7 +574,8 @@ jobs: | ||||
|       - uses: actions/upload-artifact@v2 | ||||
|         if: always() | ||||
|         with: | ||||
|           name:  TestResults cgroup2 ${{ matrix.runtime }} ${{matrix.runc}} | ||||
|           # ${{ matrix.box }} cannot be used here due to character limitation | ||||
|           name:  TestResults vagrant ${{ github.run_id }} ${{ matrix.runtime }} ${{matrix.runc}} | ||||
|           path: | | ||||
|             ${{github.workspace}}/*-junit.xml | ||||
|             ${{github.workspace}}/critestreport/* | ||||
|   | ||||
							
								
								
									
										22
									
								
								Vagrantfile
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								Vagrantfile
									
									
									
									
										vendored
									
									
								
							| @@ -15,9 +15,10 @@ | ||||
| #   See the License for the specific language governing permissions and | ||||
| #   limitations under the License. | ||||
|  | ||||
| # Vagrantfile for cgroup2 and SELinux | ||||
| # Vagrantfile for Fedora and EL | ||||
| Vagrant.configure("2") do |config| | ||||
|   config.vm.box = "fedora/35-cloud-base" | ||||
|   config.vm.box = ENV["BOX"] || "fedora/35-cloud-base" | ||||
|   config.vm.box_version = ENV["BOX_VERSION"] | ||||
|   memory = 4096 | ||||
|   cpus = 2 | ||||
|   config.vm.provider :virtualbox do |v| | ||||
| @@ -71,6 +72,19 @@ Vagrant.configure("2") do |config| | ||||
|     SHELL | ||||
|   end | ||||
|  | ||||
|   # EL does not have /usr/local/{bin,sbin} in the PATH by default | ||||
|   config.vm.provision "setup-etc-environment", type: "shell", run: "once" do |sh| | ||||
|     sh.upload_path = "/tmp/vagrant-setup-etc-environment" | ||||
|     sh.inline = <<~SHELL | ||||
|         #!/usr/bin/env bash | ||||
|         set -eux -o pipefail | ||||
|         cat >> /etc/environment <<EOF | ||||
| PATH=/usr/local/go/bin:/usr/local/bin:/usr/local/sbin:$PATH | ||||
| EOF | ||||
|         source /etc/environment | ||||
|         SHELL | ||||
|   end | ||||
|  | ||||
|   # To re-run this provisioner, installing a different version of go: | ||||
|   #   GO_VERSION="1.14.6" vagrant up --provision-with=install-golang | ||||
|   # | ||||
| @@ -83,10 +97,6 @@ Vagrant.configure("2") do |config| | ||||
|         #!/usr/bin/env bash | ||||
|         set -eux -o pipefail | ||||
|         curl -fsSL "https://dl.google.com/go/go${GO_VERSION}.linux-amd64.tar.gz" | tar Cxz /usr/local | ||||
|         cat >> /etc/environment <<EOF | ||||
| PATH=/usr/local/go/bin:$PATH | ||||
| EOF | ||||
|         source /etc/environment | ||||
|         cat >> /etc/profile.d/sh.local <<EOF | ||||
| GOPATH=\\$HOME/go | ||||
| PATH=\\$GOPATH/bin:\\$PATH | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Akihiro Suda
					Akihiro Suda