Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* text=auto eol=lf
164 changes: 82 additions & 82 deletions .github/workflows/build_image.yaml
Original file line number Diff line number Diff line change
@@ -1,83 +1,83 @@
name: build-and-push-images

on:
push:
branches: ["main"]
workflow_dispatch:

permissions:
contents: read
packages: write

env:
REGISTRY: ghcr.io
ORG: ${{ github.repository_owner }}

jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
image: [cuscuta-chilo, cuscuta-worker, cuscuta-entry]

steps:
- uses: actions/checkout@v4

- uses: docker/setup-buildx-action@v3

- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Read version from Cargo.toml
id: ver
shell: bash
run: |
set -euo pipefail
cargo_toml="Cargo.toml"
version="$(python3 - "$cargo_toml" <<'PY'
import sys, tomllib
with open(sys.argv[1], "rb") as f:
obj = tomllib.load(f)
print(obj["workspace"]["package"]["version"])
PY
)"
echo "version=$version" >> "$GITHUB_OUTPUT"

- name: Build and push
uses: docker/build-push-action@v6
with:
context: .
file: ./${{ matrix.image }}/Dockerfile
push: true
tags: |
${{ env.REGISTRY }}/${{ env.ORG }}/${{ matrix.image }}:${{ steps.ver.outputs.version }}
${{ env.REGISTRY }}/${{ env.ORG }}/${{ matrix.image }}:sha-${{ github.sha }}

helm:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4

- name: Set up Helm
uses: azure/setup-helm@v4

- name: Install helm-push plugin
run: helm plugin install --verify=false https://github.com/chartmuseum/helm-push

- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Package and push Helm chart
run: |
helm package ./helm
name: build-and-push-images
on:
push:
branches: ["main"]
workflow_dispatch:
permissions:
contents: read
packages: write
env:
REGISTRY: ghcr.io
ORG: ${{ github.repository_owner }}
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
image: [cuscuta-chilo, cuscuta-worker, cuscuta-entry]
steps:
- uses: actions/checkout@v4
- uses: docker/setup-buildx-action@v3
- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Read version from Cargo.toml
id: ver
shell: bash
run: |
set -euo pipefail
cargo_toml="Cargo.toml"
version="$(python3 - "$cargo_toml" <<'PY'
import sys, tomllib
with open(sys.argv[1], "rb") as f:
obj = tomllib.load(f)
print(obj["workspace"]["package"]["version"])
PY
)"
echo "version=$version" >> "$GITHUB_OUTPUT"
- name: Build and push
uses: docker/build-push-action@v6
with:
context: .
file: ./${{ matrix.image }}/Dockerfile
push: true
tags: |
${{ env.REGISTRY }}/${{ env.ORG }}/${{ matrix.image }}:${{ steps.ver.outputs.version }}
${{ env.REGISTRY }}/${{ env.ORG }}/${{ matrix.image }}:sha-${{ github.sha }}
helm:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
- name: Set up Helm
uses: azure/setup-helm@v4
- name: Install helm-push plugin
run: helm plugin install --verify=false https://github.com/chartmuseum/helm-push
- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Package and push Helm chart
run: |
helm package ./helm
helm push cuscuta-*.tgz oci://${{ env.REGISTRY }}/${{ env.ORG }}/charts
100 changes: 55 additions & 45 deletions .github/workflows/pr_check.yaml
Original file line number Diff line number Diff line change
@@ -1,46 +1,56 @@
name: cargo-code-check

on:
pull_request:
types: [opened, synchronize, reopened]
branches: ["main"]
paths-ignore:
- '*.md'
- '.github/**'
- 'helm/**'

env:
CARGO_TERM_COLOR: always
RUSTFLAGS: "-D warnings"

jobs:
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- run: cargo fmt --all --check

check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: Install native deps (chilo)
run: sudo apt-get update && sudo apt-get install -y clang cmake pkg-config
- uses: Swatinem/rust-cache@v2
- run: cargo check --workspace

clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- name: Install native deps (chilo)
run: sudo apt-get update && sudo apt-get install -y clang cmake pkg-config
- uses: Swatinem/rust-cache@v2
name: cargo-code-check

on:
pull_request:
types: [opened, synchronize, reopened]
branches: ["main"]
paths-ignore:
- '*.md'
- '.github/**'
- 'helm/**'

env:
CARGO_TERM_COLOR: always
RUSTFLAGS: "-D warnings"

jobs:
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- run: cargo fmt --all --check

check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: Install native deps (chilo)
run: sudo apt-get update && sudo apt-get install -y clang cmake pkg-config
- uses: Swatinem/rust-cache@v2
- run: cargo check --workspace

test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: Install native deps (chilo)
run: sudo apt-get update && sudo apt-get install -y clang cmake pkg-config
- uses: Swatinem/rust-cache@v2
- run: cargo test --workspace

clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- name: Install native deps (chilo)
run: sudo apt-get update && sudo apt-get install -y clang cmake pkg-config
- uses: Swatinem/rust-cache@v2
- run: cargo clippy --workspace -- -D warnings
9 changes: 5 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
docker-compose-local.yaml
tmp
draft
target
docker-compose-local.yaml
tmp
draft
target
*.vim
19 changes: 15 additions & 4 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading