name: nightly on: workflow_dispatch: #schedule: #- cron: 0 20 * * * jobs: dist-x86_64-darwin: runs-on: macos-latest timeout-minutes: 15 steps: - uses: actions/checkout@v1 - name: Download LLVM and setup PATH run: | brew install llvm@11 echo "/usr/local/opt/llvm@11/bin" >> $GITHUB_PATH TMP_PATH=$(xcrun --show-sdk-path)/user/include echo "CPATH=$TMP_PATH" >> $GITHUB_ENV - name: Download Odin run: | git clone https://github.com/odin-lang/Odin - name: Build Odin run: | cd Odin make release - name: Build ols run: ./build.sh CI - name: Move to Dist run: | mkdir dist mv ols dist/ols-x86_64-darwin - name: Upload artifacts uses: actions/upload-artifact@v2 with: name: dist-x86_64-darwin path: ./dist dist-x86_64-unknown-linux-gnu: timeout-minutes: 30 runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Download LLVM run: sudo apt-get install llvm-11 clang-11 - name: Download Odin run: | git clone https://github.com/odin-lang/Odin - name: Build Odin run: | cd Odin ./build_odin.sh release - name: Build ols run: ./build.sh CI - name: Move to Dist run: | mkdir dist mv ols dist/ols-x86_64-unknown-linux-gnu - name: Upload artifacts uses: actions/upload-artifact@v2 with: name: dist-x86_64-unknown-linux-gnu path: ./dist dist-x86_64-pc-windows-msvc: timeout-minutes: 30 runs-on: windows-2019 steps: - uses: actions/checkout@v1 - name: Download Odin shell: cmd run: | git clone https://github.com/odin-lang/Odin - name: Build Odin shell: cmd run: | call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat cd Odin ./build.bat 1 - name: Build ols shell: cmd run: ./build.bat CI - name: Move to Dist shell: cmd run: | mkdir dist move ols.exe dist/ move builtin dist/ cd dist ren ols.exe ols-x86_64-pc-windows-msvc.exe - name: Upload artifacts uses: actions/upload-artifact@v2 with: name: dist-x86_64-pc-windows-msvc path: ./dist publish: name: publish runs-on: ubuntu-latest timeout-minutes: 30 needs: ['dist-x86_64-pc-windows-msvc', 'dist-x86_64-unknown-linux-gnu', 'dist-x86_64-darwin'] steps: - name: Install Nodejs uses: actions/setup-node@v1 with: node-version: 12.x - name: Checkout repository uses: actions/checkout@v2 with: fetch-depth: ${{ env.FETCH_DEPTH }} - run: echo "HEAD_SHA=$(git rev-parse HEAD)" >> $GITHUB_ENV - run: 'echo "HEAD_SHA: $HEAD_SHA"' - uses: actions/download-artifact@v2 with: name: dist-x86_64-unknown-linux-gnu path: dist - uses: actions/download-artifact@v2 with: name: dist-x86_64-pc-windows-msvc path: dist - uses: actions/download-artifact@v2 with: name: dist-x86_64-darwin path: dist - run: | ls -al ./dist cd dist zip -r ols-x86_64-pc-windows-msvc.zip ols-x86_64-pc-windows-msvc.exe builtin chmod +x ols-x86_64-unknown-linux-gnu zip -r ols-x86_64-unknown-linux-gnu.zip ols-x86_64-unknown-linux-gnu builtin chmod +x ols-x86_64-darwin zip -r ols-x86_64-darwin.zip ols-x86_64-darwin builtin rm -rf builtin - name: Publish Release uses: ./.github/actions/github-release with: files: "dist/*" name: "nightly" token: ${{ secrets.GITHUB_TOKEN }}