diff --git a/.forgejo/workflows/almalinux:8.yaml b/.forgejo/workflows/almalinux:8.yaml index 639180c..7ca55e6 100644 --- a/.forgejo/workflows/almalinux:8.yaml +++ b/.forgejo/workflows/almalinux:8.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/almalinux:9.yaml b/.forgejo/workflows/almalinux:9.yaml index 6211ddd..b39b2a2 100644 --- a/.forgejo/workflows/almalinux:9.yaml +++ b/.forgejo/workflows/almalinux:9.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/alpine:3.18.yaml b/.forgejo/workflows/alpine:3.18.yaml index 557e548..3fc3fa1 100644 --- a/.forgejo/workflows/alpine:3.18.yaml +++ b/.forgejo/workflows/alpine:3.18.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/alpine:3.19.yaml b/.forgejo/workflows/alpine:3.19.yaml index 41447cc..ad51687 100644 --- a/.forgejo/workflows/alpine:3.19.yaml +++ b/.forgejo/workflows/alpine:3.19.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/archlinux:base-20231112.0.191179.yaml b/.forgejo/workflows/archlinux:base-20231112.0.191179.yaml index 648ff07..5b097d7 100644 --- a/.forgejo/workflows/archlinux:base-20231112.0.191179.yaml +++ b/.forgejo/workflows/archlinux:base-20231112.0.191179.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/archlinux:base-20240101.0.204074.yaml b/.forgejo/workflows/archlinux:base-20240101.0.204074.yaml index 60cfd91..e3bccb8 100644 --- a/.forgejo/workflows/archlinux:base-20240101.0.204074.yaml +++ b/.forgejo/workflows/archlinux:base-20240101.0.204074.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/debian:bullseye.yaml b/.forgejo/workflows/debian:bullseye.yaml index 2d7d210..2f68dbe 100644 --- a/.forgejo/workflows/debian:bullseye.yaml +++ b/.forgejo/workflows/debian:bullseye.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/fedora:39.yaml b/.forgejo/workflows/fedora:39.yaml index 6f45d95..8f79067 100644 --- a/.forgejo/workflows/fedora:39.yaml +++ b/.forgejo/workflows/fedora:39.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/fedora:40.yaml b/.forgejo/workflows/fedora:40.yaml index 61a6941..c1860a4 100644 --- a/.forgejo/workflows/fedora:40.yaml +++ b/.forgejo/workflows/fedora:40.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/rockylinux:8.yaml b/.forgejo/workflows/rockylinux:8.yaml index 736cf28..6749f33 100644 --- a/.forgejo/workflows/rockylinux:8.yaml +++ b/.forgejo/workflows/rockylinux:8.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/rockylinux:9.yaml b/.forgejo/workflows/rockylinux:9.yaml index 13e63a5..f9c39ce 100644 --- a/.forgejo/workflows/rockylinux:9.yaml +++ b/.forgejo/workflows/rockylinux:9.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/ubuntu:jammy.yaml b/.forgejo/workflows/ubuntu:jammy.yaml index 84506a1..163dc1d 100644 --- a/.forgejo/workflows/ubuntu:jammy.yaml +++ b/.forgejo/workflows/ubuntu:jammy.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.forgejo/workflows/ubuntu:noble.yaml b/.forgejo/workflows/ubuntu:noble.yaml index 91c710f..0dfeb56 100644 --- a/.forgejo/workflows/ubuntu:noble.yaml +++ b/.forgejo/workflows/ubuntu:noble.yaml @@ -7,7 +7,7 @@ jobs: - name: cd env: CD: ${{secrets.cd}} - run: ${{vars.cd}} ${{vars.cd_ssh_hosts}} + run: ${{vars.cd}} "${{vars.cd_ssh_hosts}}" - run: cd-list-environment - run: cd-clone-branch diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8158f14..3eaca49 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,7 +1,7 @@ image: debian:bookworm job: script: - - source ${CD} + - source ${CD} ${CD_SSH_HOSTS} - cd-list-environment - cd-clone-branch diff --git a/cd.sh b/cd.sh index f1f1ad3..84e7dbc 100644 --- a/cd.sh +++ b/cd.sh @@ -5,8 +5,9 @@ CD_DEFAULT_DNS="\ 9.9.9.9 \ " +CD_PYTHON_MODULE="cd" CD_PYTHON_MODULES="\ -cd \ +${CD_PYTHON_MODULE} \ rwx \ " @@ -35,8 +36,8 @@ cd_main () { # TODO move to Python cd_install_ssh cd_clean_packages_cache - cd_install_python_modules ${CD_PYTHON_MODULES} - cd_execute_python_module ${CD_PYTHON_MODULES} + cd_install_python_modules + cd_execute_python_module "${@}" } # steps @@ -540,7 +541,7 @@ local url cd_step "Install Python modules" root="$(mktemp --directory)" || exit echo "${root}" - for repository in "${@}" ; do + for repository in ${CD_PYTHON_MODULES} ; do cd_split url="${CD_PROJECTS_URL}/${repository}" echo -n "\ @@ -571,9 +572,9 @@ local self echo -n "\ ${self} ↓ -${1} +${CD_PYTHON_MODULE} " - "${CD_PYTHON_ALIAS}" -m "${1}" "${CD_STEP}" "${self}" + "${CD_PYTHON_ALIAS}" -m "${CD_PYTHON_MODULE}" "${@}" } # functions @@ -719,4 +720,4 @@ CD_PM_PACMAN="pacman" CD_SPLIT="─╌╌┄┄┈┈" # run -cd_main "${@}" +cd_main diff --git a/cd/__init__.py b/cd/__init__.py index b2cc47a..28b8c3b 100644 --- a/cd/__init__.py +++ b/cd/__init__.py @@ -86,8 +86,8 @@ def install_commands(path): os.symlink(path, os.path.join(user, f'{COMMANDS_PREFIX}{command}')) -def set_ssh(): - ssh_hosts = projects.environment.get('CD_SSH_HOSTS', None) +def set_ssh(*arguments): + ssh_hosts = arguments[0] ssh_key = projects.environment.get('CD', None) ssh_type = projects.environment.get('CD_SSH_TYPE', 'ed25519') # diff --git a/cd/__main__.py b/cd/__main__.py index ba1ca17..d67667f 100755 --- a/cd/__main__.py +++ b/cd/__main__.py @@ -10,7 +10,7 @@ if __name__ == '__main__': command, *arguments = sys.argv command = os.path.basename(command) if command == '__main__.py': - cd.set_ssh() + cd.set_ssh(*arguments) cd.install_commands(__file__) else: command = command.replace('-', '_')