name: macOS on: pull_request: push: release: types: [published] jobs: build: runs-on: macos-latest steps: - uses: actions/checkout@v2 with: submodules: true - name: prepare local xmake run: cp -rf . ../xmake-source - uses: xmake-io/github-action-setup-xmake@v1 with: xmake-version: local#../xmake-source - uses: dlang-community/setup-dlang@v1 with: compiler: dmd-latest - uses: little-core-labs/get-git-tag@v3.0.2 id: tagName # tests - name: tests run: | xmake lua -v -D tests/run.lua xrepo --version # build artifacts - name: artifact run: | brew install gnu-tar gem install --no-document fpm scripts/makepkg osxpkg scripts/archive-all scripts/makeself/build-runfile.sh # upload artifacts - uses: actions/upload-artifact@v2 with: name: xmake-latest.macosx.pkg path: artifacts/xmake.pkg - uses: actions/upload-artifact@v2 with: name: xmake-latest.gz.run path: artifacts/xmake.gz.run - uses: actions/upload-artifact@v2 with: name: xmake-latest.xz.run path: artifacts/xmake.xz.run - uses: actions/upload-artifact@v2 with: name: xmake-latest.tar.gz path: artifacts/xmake.tar.gz - uses: actions/upload-artifact@v2 with: name: xmake-latest.zip path: artifacts/xmake.zip # publish release - name: publish if: github.event.action == 'published' uses: actions/upload-release-asset@v1.0.1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ github.event.release.upload_url }} asset_path: artifacts/xmake.pkg asset_name: xmake-${{ steps.tagName.outputs.tag }}.macosx.pkg asset_content_type: application/zip - name: publish if: github.event.action == 'published' uses: actions/upload-release-asset@v1.0.1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ github.event.release.upload_url }} asset_path: artifacts/xmake.gz.run asset_name: xmake-${{ steps.tagName.outputs.tag }}.gz.run asset_content_type: application/zip - name: publish if: github.event.action == 'published' uses: actions/upload-release-asset@v1.0.1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ github.event.release.upload_url }} asset_path: artifacts/xmake.xz.run asset_name: xmake-${{ steps.tagName.outputs.tag }}.xz.run asset_content_type: application/zip - name: publish if: github.event.action == 'published' uses: actions/upload-release-asset@v1.0.1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ github.event.release.upload_url }} asset_path: artifacts/xmake.tar.gz asset_name: xmake-${{ steps.tagName.outputs.tag }}.tar.gz asset_content_type: application/zip - name: publish if: github.event.action == 'published' uses: actions/upload-release-asset@v1.0.1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ github.event.release.upload_url }} asset_path: artifacts/xmake.zip asset_name: xmake-${{ steps.tagName.outputs.tag }}.zip asset_content_type: application/zip