From 0f6616f2820bbaf42cab3c2812cd2688c68a4948 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Sun, 5 Jan 2025 10:00:52 -0500 Subject: [PATCH 1/3] enh: add encfs-repo support to ubuntu builds --- .../template/build-{{ostype}}.yaml.j2 | 19 +++++++++++++++++-- .github/workflows/template/specs.yml | 2 +- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/.github/workflows/template/build-{{ostype}}.yaml.j2 b/.github/workflows/template/build-{{ostype}}.yaml.j2 index 5ab37c7dfa..64742f9be9 100644 --- a/.github/workflows/template/build-{{ostype}}.yaml.j2 +++ b/.github/workflows/template/build-{{ostype}}.yaml.j2 @@ -458,6 +458,11 @@ jobs: sudo exportfs -a sudo mount -t nfs localhost:/tmp/nfsmount_ /tmp/nfsmount fi + if echo "${{ matrix.flavor }}" | grep -q "encfs" ; then + mkdir /tmp/encfsmount_ /tmp/encfsmount + sudo apt-get install -y encfs + encfs --standard --extpass="echo 123" /tmp/encfsmount_ /tmp/encfsmount + fi case "${{ matrix.flavor }}" in # For git-annex it causes only few temporary directories to be on the crippled FS, @@ -477,7 +482,7 @@ jobs: nfs-home) export HOME=/tmp/nfsmount ;; - normal|custom-config1) + normal|custom-config1|encfs-repo) ;; *) echo "Unknown flavor ${{ matrix.flavor }}" @@ -501,9 +506,19 @@ jobs: ;; esac - cd $HOME + case "${{ matrix.flavor }}" in + # Perform testing only (leaving TMP or HOME) aside in --repo flavors + # and generally under $HOME + encfs-repo) cd /tmp/encfsmount;; + *) cd $HOME;; + esac + export | grep -e crippledfs || : + # Report basic info about current path given that we might cd away + stat $PWD + df . || : + timeout 3600 git annex test "${test_opts[@]:-}" - name: Set final PR status diff --git a/.github/workflows/template/specs.yml b/.github/workflows/template/specs.yml index 7d173fb7d7..1df4bb6449 100644 --- a/.github/workflows/template/specs.yml +++ b/.github/workflows/template/specs.yml @@ -7,7 +7,7 @@ DEB_SIGN_KEYID: 13A1093296154584245E0300C98FC49D36DAB17F DEB_BUILD_OPTIONS: nocheck bbuild_log: git-annex-build.log - test_annex_flavors: [normal, crippled-tmp, crippled-home, nfs-home, custom-config1] + test_annex_flavors: [normal, crippled-tmp, crippled-home, nfs-home, custom-config1, encfs-repo] # nfs-tmp was removed/replaced with nfs-home since annex started to use TMPDIR for gpg, and tests started to fail artifact_basename: git-annex-debianstandalone-packages artifact_install_steps: From 7a21c4707e1678f3ffb8ebe96f86138edb5dff60 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Mon, 6 Jan 2025 09:02:16 -0500 Subject: [PATCH 2/3] Use bashism for encfs matching Co-authored-by: John T. Wodder II --- .github/workflows/template/build-{{ostype}}.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/template/build-{{ostype}}.yaml.j2 b/.github/workflows/template/build-{{ostype}}.yaml.j2 index 64742f9be9..04d62148d3 100644 --- a/.github/workflows/template/build-{{ostype}}.yaml.j2 +++ b/.github/workflows/template/build-{{ostype}}.yaml.j2 @@ -458,7 +458,7 @@ jobs: sudo exportfs -a sudo mount -t nfs localhost:/tmp/nfsmount_ /tmp/nfsmount fi - if echo "${{ matrix.flavor }}" | grep -q "encfs" ; then + if [[ "${{ matrix.flavor }}" == *encfs* ]] ; then mkdir /tmp/encfsmount_ /tmp/encfsmount sudo apt-get install -y encfs encfs --standard --extpass="echo 123" /tmp/encfsmount_ /tmp/encfsmount From 83bf3a65a301aff728eff3187bd3f1dc596f7867 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Mon, 6 Jan 2025 09:02:43 -0500 Subject: [PATCH 3/3] [DATALAD RUNCMD] regenerate templates after modifying workflow === Do not change lines below === { "chain": [ "47fa1b854c9e94abc0fe7aadb8df8a8cd6525808", "ff26f850198044041285400f56f451b5a76d95d3", "424897650eadcbf7c13636064073bde0df7a6eda" ], "cmd": "make -C .github/workflows/template", "exit": 0, "extra_inputs": [], "inputs": [], "outputs": [], "pwd": "." } ^^^ Do not change lines above ^^^ --- .github/workflows/build-macos.yaml | 19 +++++++++++++++++-- .github/workflows/build-ubuntu.yaml | 21 ++++++++++++++++++--- .github/workflows/build-windows.yaml | 12 +++++++++++- 3 files changed, 46 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build-macos.yaml b/.github/workflows/build-macos.yaml index da017f118c..8c95057d28 100644 --- a/.github/workflows/build-macos.yaml +++ b/.github/workflows/build-macos.yaml @@ -248,6 +248,11 @@ jobs: sudo exportfs -a sudo mount -t nfs localhost:/tmp/nfsmount_ /tmp/nfsmount fi + if [[ "${{ matrix.flavor }}" == *encfs* ]] ; then + mkdir /tmp/encfsmount_ /tmp/encfsmount + sudo apt-get install -y encfs + encfs --standard --extpass="echo 123" /tmp/encfsmount_ /tmp/encfsmount + fi case "${{ matrix.flavor }}" in # For git-annex it causes only few temporary directories to be on the crippled FS, @@ -267,7 +272,7 @@ jobs: nfs-home) export HOME=/tmp/nfsmount ;; - normal|custom-config1) + normal|custom-config1|encfs-repo) ;; *) echo "Unknown flavor ${{ matrix.flavor }}" @@ -290,9 +295,19 @@ jobs: ;; esac - cd $HOME + case "${{ matrix.flavor }}" in + # Perform testing only (leaving TMP or HOME) aside in --repo flavors + # and generally under $HOME + encfs-repo) cd /tmp/encfsmount;; + *) cd $HOME;; + esac + export | grep -e crippledfs || : + # Report basic info about current path given that we might cd away + stat $PWD + df . || : + timeout 3600 git annex test "${test_opts[@]:-}" - name: Set final PR status diff --git a/.github/workflows/build-ubuntu.yaml b/.github/workflows/build-ubuntu.yaml index 9e3aa6964a..b5d17549a0 100644 --- a/.github/workflows/build-ubuntu.yaml +++ b/.github/workflows/build-ubuntu.yaml @@ -244,7 +244,7 @@ jobs: needs: build-package strategy: matrix: - flavor: ["normal", "crippled-tmp", "crippled-home", "nfs-home", "custom-config1"] + flavor: ["normal", "crippled-tmp", "crippled-home", "nfs-home", "custom-config1", "encfs-repo"] os: [ubuntu-latest] fail-fast: false steps: @@ -297,6 +297,11 @@ jobs: sudo exportfs -a sudo mount -t nfs localhost:/tmp/nfsmount_ /tmp/nfsmount fi + if [[ "${{ matrix.flavor }}" == *encfs* ]] ; then + mkdir /tmp/encfsmount_ /tmp/encfsmount + sudo apt-get install -y encfs + encfs --standard --extpass="echo 123" /tmp/encfsmount_ /tmp/encfsmount + fi case "${{ matrix.flavor }}" in # For git-annex it causes only few temporary directories to be on the crippled FS, @@ -316,7 +321,7 @@ jobs: nfs-home) export HOME=/tmp/nfsmount ;; - normal|custom-config1) + normal|custom-config1|encfs-repo) ;; *) echo "Unknown flavor ${{ matrix.flavor }}" @@ -339,9 +344,19 @@ jobs: ;; esac - cd $HOME + case "${{ matrix.flavor }}" in + # Perform testing only (leaving TMP or HOME) aside in --repo flavors + # and generally under $HOME + encfs-repo) cd /tmp/encfsmount;; + *) cd $HOME;; + esac + export | grep -e crippledfs || : + # Report basic info about current path given that we might cd away + stat $PWD + df . || : + timeout 3600 git annex test "${test_opts[@]:-}" - name: Set final PR status diff --git a/.github/workflows/build-windows.yaml b/.github/workflows/build-windows.yaml index 71dc6a681a..d70bbd47a9 100644 --- a/.github/workflows/build-windows.yaml +++ b/.github/workflows/build-windows.yaml @@ -278,9 +278,19 @@ jobs: ;; esac - cd $HOME + case "${{ matrix.flavor }}" in + # Perform testing only (leaving TMP or HOME) aside in --repo flavors + # and generally under $HOME + encfs-repo) cd /tmp/encfsmount;; + *) cd $HOME;; + esac + export | grep -e crippledfs || : + # Report basic info about current path given that we might cd away + stat $PWD + df . || : + timeout 3600 git annex test "${test_opts[@]:-}" - name: Set final PR status