|
7 | 7 | - "docker/**" |
8 | 8 | workflow_dispatch: |
9 | 9 | inputs: |
10 | | - target_host: |
11 | | - description: "Target host (ex. Ubu, ARM, Main)" |
12 | | - required: true |
13 | | - type: string |
14 | 10 | folder: |
15 | | - description: "Folder to deploy (ex. jellyfin, arm, all)" |
| 11 | + description: "Folder to deploy (ex. jellyfin, blocky, geohub)" |
16 | 12 | required: true |
17 | 13 | type: string |
18 | 14 |
|
@@ -45,44 +41,48 @@ jobs: |
45 | 41 | echo "Modified folders: $folders" |
46 | 42 | echo "::set-output name=folders::$folders" |
47 | 43 |
|
48 | | - - name: Override Target Host and Folder (Manual Run) |
| 44 | + - name: Override Folder (Manual Run) |
49 | 45 | if: github.event_name == 'workflow_dispatch' |
50 | 46 | run: | |
51 | | - echo "target_host=${{ github.event.inputs.target_host }}" >> $GITHUB_ENV |
52 | 47 | echo "folder=${{ github.event.inputs.folder }}" >> $GITHUB_ENV |
53 | 48 |
|
54 | 49 | - name: Map Folder to Host |
55 | | - if: github.event_name != 'workflow_dispatch' |
56 | 50 | shell: bash |
57 | 51 | run: | |
58 | | - IFS=' ' read -r -a folder_array <<< "${{ steps.detect-changes.outputs.folders }}" |
| 52 | + if [ -n "${folder}" ]; then |
| 53 | + folder_list="${folder}" |
| 54 | + else |
| 55 | + folder_list="${{ steps.detect-changes.outputs.folders }}" |
| 56 | + fi |
| 57 | +
|
| 58 | + IFS=' ' read -r -a folder_array <<< "$folder_list" |
59 | 59 | hosts="" |
60 | 60 | folders="" |
61 | 61 |
|
62 | | - for folder in "${folder_array[@]}"; do |
63 | | - case $folder in |
64 | | - alloy) host="all" ;; |
65 | | - arm) host="ARM" ;; |
66 | | - caddy) host="proxy" ;; |
67 | | - databases) host="docker" ;; |
68 | | - downloaders) host="downloaders" ;; |
69 | | - geohub) host="Ubu" ;; |
70 | | - omni) host="omni" ;; |
71 | | - ollama) host="ollama" ;; |
| 62 | + for f in "${folder_array[@]}"; do |
| 63 | + case $f in |
| 64 | + ai) host="ollama" ;; |
| 65 | + audiobookshelf) host="audiobook-shelf" ;; |
72 | 66 | blocky) host="blocky-HA" ;; |
| 67 | + caddy) host="proxy" ;; |
| 68 | + couchdb) host="docker" ;; |
| 69 | + downloaders) host="truenas" ;; |
73 | 70 | exporters) host="Ubu" ;; |
74 | | - jellyfin) host="Ark-Ripper" ;; |
| 71 | + geohub) host="Ubu" ;; |
| 72 | + jellyfin) host="truenas" ;; |
75 | 73 | npm) host="Nginx-Proxy-Manager" ;; |
| 74 | + omni) host="omni" ;; |
| 75 | + vps) host="racknerd-vps" ;; |
76 | 76 | wazuh) host="wazuh" ;; |
77 | | - *) echo "Unknown folder: $folder" && exit 1 ;; |
| 77 | + *) echo "Unknown folder: $f" && exit 1 ;; |
78 | 78 | esac |
79 | 79 |
|
80 | 80 | if [ -z "$hosts" ]; then |
81 | 81 | hosts="$host" |
82 | | - folders="$folder" |
| 82 | + folders="$f" |
83 | 83 | else |
84 | 84 | hosts="$hosts,$host" |
85 | | - folders="$folders,$folder" |
| 85 | + folders="$folders,$f" |
86 | 86 | fi |
87 | 87 | done |
88 | 88 |
|
|
0 commit comments