github.com/lalkh/containerd@v1.4.3/.github/workflows/nightly.yml (about) 1 name: Nightly 2 on: 3 schedule: 4 - cron: '0 0 * * *' # Every day at midnight 5 pull_request: 6 paths: 7 - '.github/workflows/nightly.yml' 8 9 jobs: 10 linux: 11 name: Linux 12 runs-on: ubuntu-latest 13 14 steps: 15 - name: Set up Go 16 uses: actions/setup-go@v1 17 with: 18 go-version: '1.15.5' 19 20 - name: Checkout 21 uses: actions/checkout@v1 22 env: 23 GOPATH: ${{ runner.workspace }} 24 GO111MODULE: off 25 with: 26 path: src/github.com/containerd/containerd 27 28 - name: Set env 29 shell: bash 30 run: | 31 echo "GOPATH=${{ github.workspace }}" >> $GITHUB_ENV 32 echo "${{ github.workspace }}/bin" >> $GITHUB_PATH 33 34 # 35 # Build 36 # 37 38 - name: Install dependencies 39 run: | 40 sudo add-apt-repository "deb [arch=arm64,s390x,ppc64el] http://ports.ubuntu.com/ubuntu-ports/ $(lsb_release -sc) main" || true 41 sudo add-apt-repository "deb [arch=arm64,s390x,ppc64el] http://ports.ubuntu.com/ubuntu-ports/ $(lsb_release -sc)-updates main" || true 42 43 sudo dpkg --add-architecture arm64 44 sudo dpkg --add-architecture s390x 45 sudo dpkg --add-architecture ppc64el 46 47 sudo apt-get update || true 48 49 sudo apt-get install -y \ 50 crossbuild-essential-arm64 \ 51 crossbuild-essential-s390x \ 52 crossbuild-essential-ppc64el \ 53 libseccomp-dev:amd64 \ 54 libseccomp-dev:arm64 \ 55 libseccomp-dev:s390x \ 56 libseccomp-dev:ppc64el 57 58 - name: Build amd64 59 env: 60 GOPATH: ${{ runner.workspace }} 61 GOOS: linux 62 GOARCH: amd64 63 run: | 64 make binaries 65 mv bin bin_amd64 66 67 - name: Build arm64 68 env: 69 GOPATH: ${{ runner.workspace }} 70 GOOS: linux 71 GOARCH: arm64 72 CC: aarch64-linux-gnu-gcc 73 CGO_ENABLED: 1 74 run: | 75 make binaries 76 mv bin bin_arm64 77 78 - name: Build s390x 79 env: 80 GOPATH: ${{ runner.workspace }} 81 GOOS: linux 82 GOARCH: s390x 83 CGO_ENABLED: 1 84 CC: s390x-linux-gnu-gcc 85 run: | 86 make binaries 87 mv bin bin_s390x 88 89 - name: Build ppc64le 90 env: 91 GOPATH: ${{ runner.workspace }} 92 GOOS: linux 93 GOARCH: ppc64le 94 CGO_ENABLED: 1 95 CC: powerpc64le-linux-gnu-gcc 96 run: | 97 make binaries 98 mv bin bin_ppc64le 99 100 # 101 # Upload 102 # 103 104 - name: Upload artifacts (linux_amd64) 105 uses: actions/upload-artifact@v1 106 with: 107 name: linux_amd64 108 path: bin_amd64 109 110 - name: Upload artifacts (linux_arm64) 111 uses: actions/upload-artifact@v1 112 with: 113 name: linux_arm64 114 path: bin_arm64 115 116 - name: Upload artifacts (linux_s390x) 117 uses: actions/upload-artifact@v1 118 with: 119 name: linux_s390x 120 path: bin_s390x 121 122 - name: Upload artifacts (linux_ppc64le) 123 uses: actions/upload-artifact@v1 124 with: 125 name: linux_ppc64le 126 path: bin_ppc64le 127 128 windows: 129 name: Windows 130 runs-on: windows-latest 131 steps: 132 - name: Set up Go 133 uses: actions/setup-go@v1 134 with: 135 go-version: '1.15.5' 136 137 - name: Checkout 138 uses: actions/checkout@v1 139 env: 140 GOPATH: ${{ runner.workspace }} 141 GO111MODULE: off 142 with: 143 path: src/github.com/containerd/containerd 144 145 - name: Set env 146 shell: bash 147 run: | 148 echo "GOPATH=${{ github.workspace }}" >> $GITHUB_ENV 149 echo "${{ github.workspace }}/bin" >> $GITHUB_PATH 150 151 - name: Build amd64 152 env: 153 GOPATH: ${{ runner.workspace }} 154 GOOS: windows 155 GOARCH: amd64 156 run: | 157 make binaries 158 159 - name: Upload artifacts (windows_amd64) 160 uses: actions/upload-artifact@v1 161 with: 162 name: windows_amd64 163 path: bin