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
2 changes: 1 addition & 1 deletion .forgejo/workflows/build-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:

- name: Install Nushell
env:
NU_VERSION: "0.108.0"
NU_VERSION: "0.113.1"
run: |
curl -fsSL -o /tmp/nu.tar.gz "https://github.com/nushell/nushell/releases/download/${NU_VERSION}/nu-${NU_VERSION}-x86_64-unknown-linux-gnu.tar.gz"
mkdir -p /tmp/nu
Expand Down
2 changes: 1 addition & 1 deletion .forgejo/workflows/validate-schemas.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:

- name: Install Nushell
env:
NU_VERSION: "0.108.0"
NU_VERSION: "0.113.1"
run: |
curl -fsSL -o /tmp/nu.tar.gz "https://github.com/nushell/nushell/releases/download/${NU_VERSION}/nu-${NU_VERSION}-x86_64-unknown-linux-gnu.tar.gz"
mkdir -p /tmp/nu
Expand Down
28 changes: 14 additions & 14 deletions .github/workflows/build-orchestrator.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,13 @@ on:
# firefox - depends on: kasm-base
# gaia - depends on: common-tools
# idp - depends on: common-tools
# jupyterhub - depends on: common-tools
# kasm-base - depends on: common-tools
# mitmproxy - depends on: common-tools
# nextcloud - depends on: nextcloud-base, common-tools
# nextcloud-base - depends on: common-tools
# nextcloud-contacts - depends on: common-tools, nextcloud
# nextcloud-webapp - depends on: common-tools, nextcloud-contacts
# jupyterhub - depends on: common-tools
# ocis - depends on: common-tools
# opencloud - depends on: common-tools
# opencloudmesh-go - depends on: common-tools
Expand Down Expand Up @@ -139,6 +139,18 @@ jobs:
disk_monitor_mode: basic
prune_build_cache: true

build_jupyterhub:
name: jupyterhub
needs:
- build_common_tools
uses: ./.github/workflows/build-service.yml
with:
service: jupyterhub
push: ${{ inputs.push }}
dependencies: "common-tools"
disk_monitor_mode: basic
prune_build_cache: true

build_kasm_base:
name: kasm-base
needs:
Expand Down Expand Up @@ -214,18 +226,6 @@ jobs:
disk_monitor_mode: basic
prune_build_cache: true

build_jupyterhub:
name: jupyterhub
needs:
- build_common_tools
uses: ./.github/workflows/build-service.yml
with:
service: jupyterhub
push: ${{ inputs.push }}
dependencies: "common-tools"
disk_monitor_mode: basic
prune_build_cache: true

build_ocis:
name: ocis
needs:
Expand Down Expand Up @@ -284,13 +284,13 @@ jobs:
- build_firefox
- build_gaia
- build_idp
- build_jupyterhub
- build_kasm_base
- build_mitmproxy
- build_nextcloud
- build_nextcloud_base
- build_nextcloud_contacts
- build_nextcloud_webapp
- build_jupyterhub
- build_ocis
- build_opencloud
- build_opencloudmesh_go
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build-push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,9 @@ jobs:
uses: actions/checkout@v5
- name: Install Nushell
env:
NU_VERSION: 0.108.0
NU_VERSION: 0.113.1
run: |
curl -fsSL -o /tmp/nu.tar.gz "https://github.com/nushell/nushell/releases/download/0.108.0/nu-0.108.0-x86_64-unknown-linux-gnu.tar.gz"
curl -fsSL -o /tmp/nu.tar.gz "https://github.com/nushell/nushell/releases/download/${{ env.NU_VERSION }}/nu-${{ env.NU_VERSION }}-x86_64-unknown-linux-gnu.tar.gz"
mkdir -p /tmp/nu
tar -xzf /tmp/nu.tar.gz -C /tmp/nu --strip-components=1
sudo mv /tmp/nu/nu /usr/local/bin/nu
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build-service.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:

- name: Install Nushell
env:
NU_VERSION: 0.108.0
NU_VERSION: 0.113.1
run: |
curl -fsSL -o /tmp/nu.tar.gz "https://github.com/nushell/nushell/releases/download/${{ env.NU_VERSION }}/nu-${{ env.NU_VERSION }}-x86_64-unknown-linux-gnu.tar.gz"
mkdir -p /tmp/nu
Expand Down Expand Up @@ -92,7 +92,7 @@ jobs:

- name: Install Nushell
env:
NU_VERSION: 0.108.0
NU_VERSION: 0.113.1
run: |
curl -fsSL -o /tmp/nu.tar.gz "https://github.com/nushell/nushell/releases/download/${{ env.NU_VERSION }}/nu-${{ env.NU_VERSION }}-x86_64-unknown-linux-gnu.tar.gz"
mkdir -p /tmp/nu
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/image-purge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,9 @@ jobs:
uses: actions/checkout@v5
- name: Install Nushell
env:
NU_VERSION: 0.108.0
NU_VERSION: 0.113.1
run: |
curl -fsSL -o /tmp/nu.tar.gz "https://github.com/nushell/nushell/releases/download/0.108.0/nu-0.108.0-x86_64-unknown-linux-gnu.tar.gz"
curl -fsSL -o /tmp/nu.tar.gz "https://github.com/nushell/nushell/releases/download/${{ env.NU_VERSION }}/nu-${{ env.NU_VERSION }}-x86_64-unknown-linux-gnu.tar.gz"
mkdir -p /tmp/nu
tar -xzf /tmp/nu.tar.gz -C /tmp/nu --strip-components=1
sudo mv /tmp/nu/nu /usr/local/bin/nu
Expand Down
75 changes: 75 additions & 0 deletions .github/workflows/pr-signal.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
# DockyPody: container build scripts and images
# Copyright (C) 2025 Mahdi Baghbani <mahdi-baghbani@azadehafzar.io>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.

# GitHub pull-request signal workflow for static validation (no image builds)

name: PR Signal

on:
pull_request:
paths:
- '.forgejo/workflows/**'
- '.github/workflows/**'
- 'Makefile'
- 'README.md'
- 'docs/**'
- 'schemas/**'
- 'services/**/Dockerfile*'
- 'services/**/scripts/**'
- 'services/**/*.nuon'
- 'scripts/**'

concurrency:
group: pr-signal-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

permissions:
contents: read

jobs:
signal:
name: PR signal validation
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Checkout
uses: actions/checkout@v5

- name: Install Nushell
env:
NU_VERSION: 0.113.1
run: |
curl -fsSL -o /tmp/nu.tar.gz "https://github.com/nushell/nushell/releases/download/${{ env.NU_VERSION }}/nu-${{ env.NU_VERSION }}-x86_64-unknown-linux-gnu.tar.gz"
mkdir -p /tmp/nu
tar -xzf /tmp/nu.tar.gz -C /tmp/nu --strip-components=1
sudo mv /tmp/nu/nu /usr/local/bin/nu
nu --version

- name: Validate all services
run: nu scripts/dockypody.nu validate --all-services

- name: Check build matrix JSON
run: nu scripts/dockypody.nu build --all-services --matrix-json --latest-only | jq . >/dev/null

- name: Dry-run CI workflow generation
run: nu scripts/dockypody.nu ci workflow --target all --dry-run >/dev/null

- name: Run CI test suite
run: nu scripts/dockypody.nu test --suite ci

- name: Lint docs
run: nu scripts/dockypody.nu docs lint
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ around them.

## Quick start

Prerequisites: Nushell 0.80 or later, GNU Make, OpenSSL, and Docker Engine.
Prerequisites: Nushell 0.113 or later, GNU Make, OpenSSL, and Docker Engine.

```bash
# Generate shared TLS material (first time only; required for most services)
Expand Down
Loading