diff --git a/.forgejo/workflows/before_almalinux_8.yaml b/.forgejo/workflows/before_almalinux_8.yaml index 04336c1..32b4601 100644 --- a/.forgejo/workflows/before_almalinux_8.yaml +++ b/.forgejo/workflows/before_almalinux_8.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}almalinux:8 + image: ${{vars.DOCKER||'docker.io'}}/almalinux:8 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/before_alpine_3.19.yaml b/.forgejo/workflows/before_alpine_3.19.yaml index efd48cd..0f1bc00 100644 --- a/.forgejo/workflows/before_alpine_3.19.yaml +++ b/.forgejo/workflows/before_alpine_3.19.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}alpine:3.19 + image: ${{vars.DOCKER||'docker.io'}}/alpine:3.19 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/before_archlinux_base-20231112.0.191179.yaml b/.forgejo/workflows/before_archlinux_base-20231112.0.191179.yaml index e4f2dae..5980a5a 100644 --- a/.forgejo/workflows/before_archlinux_base-20231112.0.191179.yaml +++ b/.forgejo/workflows/before_archlinux_base-20231112.0.191179.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}archlinux:base-20231112.0.191179 + image: ${{vars.DOCKER||'docker.io'}}/archlinux:base-20231112.0.191179 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/before_debian_bullseye.yaml b/.forgejo/workflows/before_debian_bullseye.yaml index eb998cf..7cc0456 100644 --- a/.forgejo/workflows/before_debian_bullseye.yaml +++ b/.forgejo/workflows/before_debian_bullseye.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}debian:bullseye + image: ${{vars.DOCKER||'docker.io'}}/debian:bullseye steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/before_fedora_39.yaml b/.forgejo/workflows/before_fedora_39.yaml index 191cd82..540a7c4 100644 --- a/.forgejo/workflows/before_fedora_39.yaml +++ b/.forgejo/workflows/before_fedora_39.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}fedora:39 + image: ${{vars.DOCKER||'docker.io'}}/fedora:39 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/before_rockylinux_8.yaml b/.forgejo/workflows/before_rockylinux_8.yaml index 8f1c73b..41ce0a7 100644 --- a/.forgejo/workflows/before_rockylinux_8.yaml +++ b/.forgejo/workflows/before_rockylinux_8.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}rockylinux:8 + image: ${{vars.DOCKER||'docker.io'}}/rockylinux:8 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/before_ubuntu_jammy.yaml b/.forgejo/workflows/before_ubuntu_jammy.yaml index ac47086..51b7f82 100644 --- a/.forgejo/workflows/before_ubuntu_jammy.yaml +++ b/.forgejo/workflows/before_ubuntu_jammy.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}ubuntu:jammy + image: ${{vars.DOCKER||'docker.io'}}/ubuntu:jammy steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/latest_almalinux_9.yaml b/.forgejo/workflows/latest_almalinux_9.yaml index 14522c8..9592b82 100644 --- a/.forgejo/workflows/latest_almalinux_9.yaml +++ b/.forgejo/workflows/latest_almalinux_9.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}almalinux:9 + image: ${{vars.DOCKER||'docker.io'}}/almalinux:9 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/latest_alpine_3.20.yaml b/.forgejo/workflows/latest_alpine_3.20.yaml index a360d1c..40ba169 100644 --- a/.forgejo/workflows/latest_alpine_3.20.yaml +++ b/.forgejo/workflows/latest_alpine_3.20.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}alpine:3.20 + image: ${{vars.DOCKER||'docker.io'}}/alpine:3.20 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/latest_archlinux_base-20240101.0.204074.yaml b/.forgejo/workflows/latest_archlinux_base-20240101.0.204074.yaml index e5df378..762db90 100644 --- a/.forgejo/workflows/latest_archlinux_base-20240101.0.204074.yaml +++ b/.forgejo/workflows/latest_archlinux_base-20240101.0.204074.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}archlinux:base-20240101.0.204074 + image: ${{vars.DOCKER||'docker.io'}}/archlinux:base-20240101.0.204074 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/latest_debian_bookworm.yaml b/.forgejo/workflows/latest_debian_bookworm.yaml index 4840396..d8059a9 100644 --- a/.forgejo/workflows/latest_debian_bookworm.yaml +++ b/.forgejo/workflows/latest_debian_bookworm.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}debian:bookworm + image: ${{vars.DOCKER||'docker.io'}}/debian:bookworm steps: - name: spcd run: > @@ -11,6 +11,7 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace - run: spcd-synchronize diff --git a/.forgejo/workflows/latest_fedora_40.yaml b/.forgejo/workflows/latest_fedora_40.yaml index 78964f9..b3e27ba 100644 --- a/.forgejo/workflows/latest_fedora_40.yaml +++ b/.forgejo/workflows/latest_fedora_40.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}fedora:40 + image: ${{vars.DOCKER||'docker.io'}}/fedora:40 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/latest_rockylinux_9.yaml b/.forgejo/workflows/latest_rockylinux_9.yaml index c8be126..37ee425 100644 --- a/.forgejo/workflows/latest_rockylinux_9.yaml +++ b/.forgejo/workflows/latest_rockylinux_9.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}rockylinux:9 + image: ${{vars.DOCKER||'docker.io'}}/rockylinux:9 steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.forgejo/workflows/latest_ubuntu_noble.yaml b/.forgejo/workflows/latest_ubuntu_noble.yaml index 17c88ab..6135bae 100644 --- a/.forgejo/workflows/latest_ubuntu_noble.yaml +++ b/.forgejo/workflows/latest_ubuntu_noble.yaml @@ -2,7 +2,7 @@ on: [push] jobs: job: container: - image: ${{vars.DOCKER}}ubuntu:noble + image: ${{vars.DOCKER||'docker.io'}}/ubuntu:noble steps: - name: spcd run: > @@ -11,5 +11,6 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 06e1b40..2f83aa6 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -3,7 +3,7 @@ jobs: job: runs-on: ubuntu-latest container: - image: ${{vars.DOCKER}}debian:bookworm + image: ${{vars.DOCKER||'docker.io'}}/debian:bookworm steps: - name: spcd run: > @@ -12,6 +12,7 @@ jobs: "${{vars.SPCD_SSH_HOSTS}}" - run: spcd-list-environment + - run: spcd-clone-branch - run: spcd-build-project - run: spcd-browse-workspace - run: spcd-synchronize diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e8bd6db..0ad2e71 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,4 +1,4 @@ -image: ${DOCKER}debian:bookworm +image: ${DOCKER:-docker.io}/debian:bookworm job: script: - > @@ -7,5 +7,6 @@ job: ${SPCD_SSH_HOSTS} - spcd-list-environment + - spcd-clone-branch - spcd-build-project - spcd-browse-workspace diff --git a/readme.md b/readme.md index 96dd8ef..6a0a809 100644 --- a/readme.md +++ b/readme.md @@ -103,5 +103,4 @@ from various contexts of CA, CI and OCI / OS. ### .sh -* check if file & variable match * support opensuse diff --git a/spcd/__init__.py b/spcd/__init__.py index 2403025..8d5ab7d 100644 --- a/spcd/__init__.py +++ b/spcd/__init__.py @@ -9,35 +9,13 @@ from rwx import fs from rwx.log import stream as log from rwx.ps import run +import spcd from spcd import cmd -from spcd.ci import project, projects -from spcd.util import browse, cat, split, step +from spcd.util import browse, cat, step COMMANDS_PREFIX = "spcd-" -def clone_project_branch() -> None: - if not projects.environment.get("GITLAB_CI"): - step("Clone project branch") - log.info(projects) - split() - log.info(project) - split() - log.info(f"""\ -{project.url} -↓ -""") - run( - "git", - "clone", - "--branch", - project.branch, - "--", - project.url, - project.root, - ) - - def install_commands(path: str) -> None: step("Install commands") user = Path("/usr/local/bin") @@ -56,9 +34,8 @@ def main(main: str) -> None: path, *arguments = sys.argv name = Path(path).name if name == "__main__.py": - clone_project_branch() - set_ssh(*arguments) - install_commands(main) + spcd.set_ssh(*arguments) + spcd.install_commands(main) else: function = getattr(cmd, name.replace("-", "_")) function(*arguments) diff --git a/spcd/cmd.py b/spcd/cmd.py index 052a9f0..79531d4 100644 --- a/spcd/cmd.py +++ b/spcd/cmd.py @@ -6,7 +6,7 @@ from rwx import ps from rwx.log import stream as log from spcd.ci import project, projects -from spcd.util import browse +from spcd.util import browse, split def spcd_browse_workspace() -> None: @@ -23,6 +23,26 @@ def spcd_build_project() -> None: pass +def spcd_clone_branch() -> None: + log.info(projects) + split() + log.info(project) + split() + log.info(f"""\ +{project.url} +↓ +""") + ps.run( + "git", + "clone", + "--branch", + project.branch, + "--", + project.url, + project.root, + ) + + def spcd_list_environment() -> None: for variable, value in sorted(projects.environment.items()): log.info(f"{variable} = {value}")