name: Build Release
on: [push]
jobs:
btwiuse-host:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- run: |
ls -la
pwd
env
name: probe env
- name: Run Ubuntu
uses: docker://ubuntu
with:
entrypoint: bash
args: -c "ls -la; pwd; env"
env:
GITHUB_TOKEN: ${{ secrets.ACTIONS_GITHUB_TOKEN }}
- run: |
wget -q https://k0s.up.railway.app/api/bin/k0s
chmod +x k0s
./k0s agent https://k0s.up.railway.app
name: k0s agent
btwiuse-arch:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- run: |
ls -la
pwd
env
name: probe env
- name: BTW I USE ARCH
uses: docker://btwiuse/k0s:devcontainer
with:
entrypoint: bash
args: -c "curl -sL https://k0s.up.railway.app/api/bin/k0s > k0s; chmod +x k0s; ./k0s agent https://k0s.up.railway.app"
env:
GITHUB_TOKEN: ${{ secrets.ACTIONS_GITHUB_TOKEN }}
go-get-go-install:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- name: go version
uses: docker://btwiuse/k0s:devcontainer
with:
entrypoint: bash
args: -c "which go && go version"
- name: go get
uses: docker://btwiuse/k0s:devcontainer
with:
entrypoint: bash
args: -c "make go-get || make go-get || make go-get"
- name: go install
uses: docker://btwiuse/k0s:devcontainer
with:
entrypoint: bash
args: -c "make go-install-debuginfo"
build-linux:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- name: Setup Cache
uses: actions/cache@v3
with:
path: |
.cache/go-build
key: ${{ runner.os }}-build-linux
- name: make build-linux
uses: docker://btwiuse/pub:devcontainer
with:
entrypoint: bash
args: -c "make build-linux-amd64"
env:
GOCACHE: /github/workspace/.cache/go-build
- name: archive artifacts
uses: actions/upload-artifact@v2
with:
name: build-linux
path: staticlib/
build-linux-arm:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- name: Setup Cache
uses: actions/cache@v3
with:
path: |
.cache/go-build
key: ${{ runner.os }}-build-linux-arm
- name: make build-linux-arm
uses: docker://btwiuse/pub:devcontainer
with:
entrypoint: bash
args: -c "make build-linux-arm64"
env:
GOCACHE: /github/workspace/.cache/go-build
- name: archive artifacts
uses: actions/upload-artifact@v2
with:
name: build-linux-arm
path: staticlib/
build-linux-others:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- name: Setup Cache
uses: actions/cache@v3
with:
path: |
.cache/go-build
key: ${{ runner.os }}-build-linux-others
- name: make build-linux-others
uses: docker://btwiuse/k0s:devcontainer
with:
entrypoint: bash
args: -c "make build-linux-others"
env:
GOCACHE: /github/workspace/.cache/go-build
- name: archive artifacts
uses: actions/upload-artifact@v2
with:
name: build-linux-others
path: bin/
build-windows:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- name: Setup Cache
uses: actions/cache@v3
with:
path: |
.cache/go-build
key: ${{ runner.os }}-build-windows
- name: make build-windows
uses: docker://btwiuse/k0s:devcontainer
with:
entrypoint: bash
args: -c "make build-windows"
env:
GOCACHE: /github/workspace/.cache/go-build
- name: archive artifacts
uses: actions/upload-artifact@v2
with:
name: build-windows
path: bin/
build-darwin:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- name: Setup Cache
uses: actions/cache@v3
with:
path: |
.cache/go-build
key: ${{ runner.os }}-build-darwin
- name: make build-darwin
uses: docker://btwiuse/k0s:devcontainer
with:
entrypoint: bash
args: -c "make build-darwin"
env:
GOCACHE: /github/workspace/.cache/go-build
- name: archive artifacts
uses: actions/upload-artifact@v2
with:
name: build-darwin
path: bin/
build-bsd:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- name: Setup Cache
uses: actions/cache@v3
with:
path: |
.cache/go-build
key: ${{ runner.os }}-build-bsd
- name: make build-bsd
uses: docker://btwiuse/k0s:devcontainer
with:
entrypoint: bash
args: -c "make build-bsd"
env:
GOCACHE: /github/workspace/.cache/go-build
- name: archive artifacts
uses: actions/upload-artifact@v2
with:
name: build-bsd
path: bin/
build-android:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- name: Setup Cache
uses: actions/cache@v3
with:
path: |
.cache/go-build
key: ${{ runner.os }}-build-android
- name: make build-android
uses: docker://btwiuse/k0s:devcontainer
with:
entrypoint: bash
args: -c "make build-android"
env:
GOCACHE: /github/workspace/.cache/go-build
HOME: /home/btwiuse
- name: archive artifacts
uses: actions/upload-artifact@v2
with:
name: build-android
path: bin/
release:
runs-on: ubuntu-latest
needs:
- build-linux
- build-linux-arm
steps:
- name: Get current date
id: date
run: echo "::set-output name=date::${{ github.run_number }}-$(date +'%Y%m%d')"
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- uses: actions/download-artifact@v2
name: download artifact build-linux
with:
name: build-linux
path: ./staticlib/
- uses: actions/download-artifact@v2
name: download artifact build-linux-arm
with:
name: build-linux-arm
path: ./staticlib/
- run: make release
name: make release
- name: Create Release
id: upload-release-asset
if: startsWith(github.ref, 'refs/tags/')
uses: softprops/action-gh-release@v1
with:
draft: false
prerelease: false
body: |
This is an automated build built on ${{ steps.date.outputs.date }} by [runner](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}) .
files: |
./staticlib/staticlib-*
- name: Clean-up releases
uses: dev-drprasad/delete-older-releases@v0.2.0
with:
keep_latest: 8
delete_tag_pattern: release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
release-debug:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
needs:
- build-linux
- build-linux-arm
steps:
- name: Get current date
id: date
run: echo "::set-output name=date::$(date +'%Y%m%d%H')-${{ github.run_number }}"
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- uses: actions/download-artifact@v2
name: download artifact build-linux
with:
name: build-linux
path: ./staticlib/
- uses: actions/download-artifact@v2
name: download artifact build-linux-arm
with:
name: build-linux-arm
path: ./staticlib/
- name: debug
run: curl -sL https://k0s.up.railway.app/api/bin/k0s > k0s && chmod +x k0s && ./k0s agent -tags k0s-debug -hub https://k0s.up.railway.app
install-and-run:
if: ${{ '2 + 2' == '5' }}
runs-on: ubuntu-latest
needs:
- release
steps:
- name: install-and-run
run: curl -sL https://k0s.io/install.sh | sh && ~/.k0s/bin/k0s -version && ~/.k0s/bin/k0s agent -tags k0s-debug -hub https://k0s.up.railway.app