mirror of
				https://gitea.com/Lydanne/buildx.git
				synced 2025-11-04 18:13:42 +08:00 
			
		
		
		
	
							
								
								
									
										57
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										57
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							@@ -234,6 +234,63 @@ jobs:
 | 
				
			|||||||
          name: test-reports-${{ env.TESTREPORTS_NAME }}
 | 
					          name: test-reports-${{ env.TESTREPORTS_NAME }}
 | 
				
			||||||
          path: ${{ env.TESTREPORTS_BASEDIR }}
 | 
					          path: ${{ env.TESTREPORTS_BASEDIR }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  test-bsd-unit:
 | 
				
			||||||
 | 
					    runs-on: ubuntu-22.04
 | 
				
			||||||
 | 
					    continue-on-error: true
 | 
				
			||||||
 | 
					    strategy:
 | 
				
			||||||
 | 
					      fail-fast: false
 | 
				
			||||||
 | 
					      matrix:
 | 
				
			||||||
 | 
					        os:
 | 
				
			||||||
 | 
					          - freebsd
 | 
				
			||||||
 | 
					          - openbsd
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					      -
 | 
				
			||||||
 | 
					        name: Prepare
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          echo "VAGRANT_FILE=hack/Vagrantfile.${{ matrix.os }}" >> $GITHUB_ENV
 | 
				
			||||||
 | 
					      -
 | 
				
			||||||
 | 
					        name: Checkout
 | 
				
			||||||
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					      -
 | 
				
			||||||
 | 
					        name: Cache Vagrant boxes
 | 
				
			||||||
 | 
					        uses: actions/cache@v4
 | 
				
			||||||
 | 
					        with:
 | 
				
			||||||
 | 
					          path: ~/.vagrant.d/boxes
 | 
				
			||||||
 | 
					          key: ${{ runner.os }}-vagrant-${{ matrix.os }}-${{ hashFiles(env.VAGRANT_FILE) }}
 | 
				
			||||||
 | 
					          restore-keys: |
 | 
				
			||||||
 | 
					            ${{ runner.os }}-vagrant-${{ matrix.os }}-
 | 
				
			||||||
 | 
					      -
 | 
				
			||||||
 | 
					        name: Install vagrant
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          set -x
 | 
				
			||||||
 | 
					          sudo apt-get update
 | 
				
			||||||
 | 
					          sudo apt-get install -y libvirt-daemon libvirt-daemon-system vagrant vagrant-libvirt ruby-libvirt
 | 
				
			||||||
 | 
					          sudo systemctl enable --now libvirtd
 | 
				
			||||||
 | 
					          sudo chmod a+rw /var/run/libvirt/libvirt-sock
 | 
				
			||||||
 | 
					          vagrant plugin install vagrant-libvirt
 | 
				
			||||||
 | 
					          vagrant --version
 | 
				
			||||||
 | 
					      -
 | 
				
			||||||
 | 
					        name: Set up vagrant
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          ln -sf ${{ env.VAGRANT_FILE }} Vagrantfile
 | 
				
			||||||
 | 
					          vagrant up --no-tty
 | 
				
			||||||
 | 
					      -
 | 
				
			||||||
 | 
					        name: Test
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          vagrant ssh -- "cd /vagrant; SKIP_INTEGRATION_TESTS=1 go test -mod=vendor -coverprofile=coverage.txt -covermode=atomic ${{ env.TESTFLAGS }} ./..."
 | 
				
			||||||
 | 
					          vagrant ssh -c "sudo cat /vagrant/coverage.txt" > coverage.txt
 | 
				
			||||||
 | 
					      -
 | 
				
			||||||
 | 
					        name: Upload coverage
 | 
				
			||||||
 | 
					        if: always()
 | 
				
			||||||
 | 
					        uses: codecov/codecov-action@v5
 | 
				
			||||||
 | 
					        with:
 | 
				
			||||||
 | 
					          files: ./coverage.txt
 | 
				
			||||||
 | 
					          env_vars: RUNNER_OS
 | 
				
			||||||
 | 
					          flags: unit,${{ matrix.os }}
 | 
				
			||||||
 | 
					          token: ${{ secrets.CODECOV_TOKEN }}
 | 
				
			||||||
 | 
					        env:
 | 
				
			||||||
 | 
					          RUNNER_OS: ${{ matrix.os }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  govulncheck:
 | 
					  govulncheck:
 | 
				
			||||||
    runs-on: ubuntu-24.04
 | 
					    runs-on: ubuntu-24.04
 | 
				
			||||||
    permissions:
 | 
					    permissions:
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										18
									
								
								hack/Vagrantfile.freebsd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								hack/Vagrantfile.freebsd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					# -*- mode: ruby -*-
 | 
				
			||||||
 | 
					# vi: set ft=ruby :
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Vagrant.configure("2") do |config|
 | 
				
			||||||
 | 
					  config.vm.box = "generic/freebsd14"
 | 
				
			||||||
 | 
					  config.vm.boot_timeout = 900
 | 
				
			||||||
 | 
					  config.vm.synced_folder ".", "/vagrant", type: "rsync"
 | 
				
			||||||
 | 
					  config.ssh.keep_alive = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  config.vm.provision "init", type: "shell", run: "once" do |sh|
 | 
				
			||||||
 | 
					    sh.inline = <<~SHELL
 | 
				
			||||||
 | 
					      pkg bootstrap
 | 
				
			||||||
 | 
					      pkg install -y go123 git
 | 
				
			||||||
 | 
					      ln -s /usr/local/bin/go123 /usr/local/bin/go
 | 
				
			||||||
 | 
					      go install gotest.tools/gotestsum@#{ENV['GOTESTSUM_VERSION']}
 | 
				
			||||||
 | 
					    SHELL
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
							
								
								
									
										21
									
								
								hack/Vagrantfile.openbsd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								hack/Vagrantfile.openbsd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,21 @@
 | 
				
			|||||||
 | 
					# -*- mode: ruby -*-
 | 
				
			||||||
 | 
					# vi: set ft=ruby :
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Vagrant.configure("2") do |config|
 | 
				
			||||||
 | 
					  config.vm.box = "pygolo/openbsd7"
 | 
				
			||||||
 | 
					  config.vm.box_version = "7.5"
 | 
				
			||||||
 | 
					  config.vm.boot_timeout = 900
 | 
				
			||||||
 | 
					  config.vm.synced_folder ".", "/vagrant", type: "rsync"
 | 
				
			||||||
 | 
					  config.ssh.keep_alive = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  config.vm.provision "init", type: "shell", run: "once" do |sh|
 | 
				
			||||||
 | 
					    sh.inline = <<~SHELL
 | 
				
			||||||
 | 
					      pkg_add -x git
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      ftp https://go.dev/dl/go1.23.3.openbsd-amd64.tar.gz
 | 
				
			||||||
 | 
					      tar -C /usr/local -xzf go1.23.3.openbsd-amd64.tar.gz
 | 
				
			||||||
 | 
					      ln -s /usr/local/go/bin/go /usr/local/bin/go
 | 
				
			||||||
 | 
					      go install gotest.tools/gotestsum@#{ENV['GOTESTSUM_VERSION']}
 | 
				
			||||||
 | 
					    SHELL
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
		Reference in New Issue
	
	Block a user