added swarm-cli image
All checks were successful
CI / Build swarm-cli docker images (push) Successful in 1m1s
All checks were successful
CI / Build swarm-cli docker images (push) Successful in 1m1s
This commit is contained in:
41
.gitea/workflows/build-swarm-cli.yaml
Normal file
41
.gitea/workflows/build-swarm-cli.yaml
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
name: CI
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ master ]
|
||||||
|
paths:
|
||||||
|
- 'swarm-cli/*'
|
||||||
|
- '.gitea/workflows/build-swarm-cli.yaml'
|
||||||
|
jobs:
|
||||||
|
"Build swarm-cli docker images":
|
||||||
|
runs-on: woryzen
|
||||||
|
steps:
|
||||||
|
-
|
||||||
|
name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3.4.0
|
||||||
|
with:
|
||||||
|
driver: docker-container
|
||||||
|
platforms: |
|
||||||
|
linux/amd64
|
||||||
|
linux/arm64
|
||||||
|
-
|
||||||
|
name: Login to Gitea container registry
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: gitea.woggioni.net
|
||||||
|
username: woggioni
|
||||||
|
password: ${{ secrets.PUBLISHER_TOKEN }}
|
||||||
|
-
|
||||||
|
name: Build and push swarm-cli images
|
||||||
|
uses: docker/build-push-action@v6
|
||||||
|
with:
|
||||||
|
context: "{{defaultContext}}:swarm-cli"
|
||||||
|
platforms: |
|
||||||
|
linux/amd64
|
||||||
|
linux/arm64
|
||||||
|
push: true
|
||||||
|
pull: true
|
||||||
|
tags: |
|
||||||
|
"gitea.woggioni.net/woggioni/swarm-cli:latest"
|
||||||
|
cache-from: type=registry,ref=gitea.woggioni.net/woggioni/swarm-cli:buildx
|
||||||
|
cache-to: type=registry,mode=max,compression=zstd,image-manifest=true,oci-mediatypes=true,ref=gitea.woggioni.net/woggioni/swarm-cli:buildx
|
||||||
|
|
12
swarm-cli/Dockerfile
Normal file
12
swarm-cli/Dockerfile
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
FROM alpine:3.22
|
||||||
|
|
||||||
|
RUN --mount=type=cache,target=/var/cache/apk apk update
|
||||||
|
RUN --mount=type=cache,target=/var/cache/apk apk add nodejs npm nushell curl
|
||||||
|
RUN npm install --global @ethersphere/swarm-cli
|
||||||
|
RUN addgroup -S ethswarm
|
||||||
|
RUN adduser -D -S -h /var/lib/ethswarm -s /usr/bin/nu -G ethswarm ethswarm
|
||||||
|
USER ethswarm
|
||||||
|
ADD config.nu /var/lib/ethswarm/.config/nushell/config.nu
|
||||||
|
ENTRYPOINT ["/usr/bin/nu"]
|
||||||
|
|
||||||
|
|
40
swarm-cli/config.nu
Normal file
40
swarm-cli/config.nu
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
# config.nu
|
||||||
|
#
|
||||||
|
# Installed by:
|
||||||
|
# version = "0.104.1"
|
||||||
|
#
|
||||||
|
# This file is used to override default Nushell settings, define
|
||||||
|
# (or import) custom commands, or run any other startup tasks.
|
||||||
|
# See https://www.nushell.sh/book/configuration.html
|
||||||
|
#
|
||||||
|
# This file is loaded after env.nu and before login.nu
|
||||||
|
#
|
||||||
|
# You can open this file in your default editor using:
|
||||||
|
# config nu
|
||||||
|
#
|
||||||
|
# See `help config nu` for more options
|
||||||
|
#
|
||||||
|
# You can remove these comments if you want or leave
|
||||||
|
# them for future reference.
|
||||||
|
|
||||||
|
use std/util "path add"
|
||||||
|
|
||||||
|
path add ($env.HOME | path join "bin")
|
||||||
|
path add ($env.HOME | path join ".local/bin")
|
||||||
|
path add ($env.HOME | path join ".cargo/bin")
|
||||||
|
|
||||||
|
$env.config.show_banner = false
|
||||||
|
$env.config.history.max_size = 10000
|
||||||
|
|
||||||
|
$env.PROMPT_COMMAND = { ||
|
||||||
|
let username = $env.USER
|
||||||
|
let hostname = sys host | get hostname
|
||||||
|
let current_dir = (pwd)
|
||||||
|
|
||||||
|
$"($username)@($hostname) ($current_dir)"
|
||||||
|
}
|
||||||
|
|
||||||
|
def --env mkcd [p: string] {
|
||||||
|
mkdir $p
|
||||||
|
cd $p
|
||||||
|
}
|
Reference in New Issue
Block a user