Compare commits
3 commits
ec00b77b92
...
263dd7e75c
Author | SHA1 | Date | |
---|---|---|---|
Gabriel Simmer | 263dd7e75c | ||
Gabriel Simmer | f81c3e9040 | ||
Gabriel Simmer | 204d08ecfd |
97
.forgejo/workflows/nix-docker.yaml
Normal file
97
.forgejo/workflows/nix-docker.yaml
Normal file
|
@ -0,0 +1,97 @@
|
||||||
|
name: "Nix build"
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
jobs:
|
||||||
|
build-docker:
|
||||||
|
runs-on: debian-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: "Cache Nix store"
|
||||||
|
uses: actions/cache@v3.0.8
|
||||||
|
id: nix-cache
|
||||||
|
with:
|
||||||
|
path: /nix
|
||||||
|
key: "tclip-cache-v1"
|
||||||
|
|
||||||
|
- name: Install Nix
|
||||||
|
uses: https://github.com/cachix/install-nix-action@v22
|
||||||
|
with:
|
||||||
|
extra_nix_config: "experimental-features = nix-command flakes"
|
||||||
|
nix_path: nixpkgs=channel:nixos-23.05
|
||||||
|
|
||||||
|
- name: "Basic CLI and web build"
|
||||||
|
run: |
|
||||||
|
nix build .#tclip .#web
|
||||||
|
|
||||||
|
- name: "Docker image build"
|
||||||
|
run: |
|
||||||
|
nix build .#docker
|
||||||
|
|
||||||
|
- name: Push image with Skopeo
|
||||||
|
run: |
|
||||||
|
nix-env -i skopeo -f '<nixpkgs>'
|
||||||
|
wget https://raw.githubusercontent.com/containers/skopeo/main/default-policy.json && mkdir /etc/containers && mv default-policy.json /etc/containers/policy.json
|
||||||
|
skopeo login --username arch --password $REGISTRY_TOKEN git.gmem.ca
|
||||||
|
skopeo copy docker-archive:result docker://git.gmem.ca/arch/tclip:latest
|
||||||
|
env:
|
||||||
|
REGISTRY_TOKEN: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
|
- name: "Portable service build"
|
||||||
|
run: |
|
||||||
|
nix build .#portable-service
|
||||||
|
mkdir -p var
|
||||||
|
cp ./result/*.raw ./var
|
||||||
|
- uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: portable-service
|
||||||
|
path: ./var/*.raw
|
||||||
|
|
||||||
|
build-docker-arm:
|
||||||
|
runs-on: debian-latest-arm
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: "Cache Nix store"
|
||||||
|
uses: actions/cache@v3.0.8
|
||||||
|
id: nix-cache
|
||||||
|
with:
|
||||||
|
path: /nix
|
||||||
|
key: "tclip-cache-v1"
|
||||||
|
|
||||||
|
- name: Install Nix
|
||||||
|
uses: https://github.com/cachix/install-nix-action@v22
|
||||||
|
with:
|
||||||
|
extra_nix_config: "experimental-features = nix-command flakes"
|
||||||
|
nix_path: nixpkgs=channel:nixos-23.05
|
||||||
|
|
||||||
|
- name: "Basic CLI and web build"
|
||||||
|
run: |
|
||||||
|
nix build .#tclip .#web
|
||||||
|
|
||||||
|
- name: "Docker image build"
|
||||||
|
run: |
|
||||||
|
nix build .#docker
|
||||||
|
|
||||||
|
- name: Push image with Skopeo
|
||||||
|
run: |
|
||||||
|
nix-env -i skopeo -f '<nixpkgs>'
|
||||||
|
wget https://raw.githubusercontent.com/containers/skopeo/main/default-policy.json && mkdir /etc/containers && mv default-policy.json /etc/containers/policy.json
|
||||||
|
skopeo login --username arch --password $REGISTRY_TOKEN git.gmem.ca
|
||||||
|
skopeo copy docker-archive:result docker://git.gmem.ca/arch/tclip:arm
|
||||||
|
env:
|
||||||
|
REGISTRY_TOKEN: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
|
- name: "Portable service build"
|
||||||
|
run: |
|
||||||
|
nix build .#portable-service
|
||||||
|
mkdir -p var
|
||||||
|
cp ./result/*.raw ./var
|
||||||
|
- uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: portable-service
|
||||||
|
path: ./var/*.raw
|
||||||
|
|
45
.github/workflows/nix.yaml
vendored
45
.github/workflows/nix.yaml
vendored
|
@ -1,45 +0,0 @@
|
||||||
name: "Nix build"
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
jobs:
|
|
||||||
tests:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
packages: write
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
- uses: cachix/install-nix-action@v18
|
|
||||||
with:
|
|
||||||
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
- name: "Basic CLI and web build"
|
|
||||||
run: |
|
|
||||||
nix build .#tclip .#web
|
|
||||||
- name: "Docker image build"
|
|
||||||
run: |
|
|
||||||
nix build .#docker
|
|
||||||
docker load < ./result
|
|
||||||
- name: "docker login"
|
|
||||||
uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v2.1.0
|
|
||||||
if: "github.event_name == 'push' && github.ref_name == 'main'"
|
|
||||||
with:
|
|
||||||
registry: ghcr.io
|
|
||||||
username: ${{ github.actor }}
|
|
||||||
password: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
- name: "Docker image push"
|
|
||||||
if: "github.event_name == 'push' && github.ref_name == 'main'"
|
|
||||||
run: |
|
|
||||||
docker push ghcr.io/tailscale-dev/tclip:latest
|
|
||||||
- name: "Portable service build"
|
|
||||||
run: |
|
|
||||||
nix build .#portable-service
|
|
||||||
mkdir -p var
|
|
||||||
cp ./result/*.raw ./var
|
|
||||||
- uses: actions/upload-artifact@v3
|
|
||||||
with:
|
|
||||||
name: portable-service
|
|
||||||
path: ./var/*.raw
|
|
||||||
|
|
Loading…
Reference in a new issue