@@ -152,10 +152,10 @@ def gen_workflow(package_name, package_data):
152152 {
153153 "name" : "Set up SSH key" ,
154154 "run" : LiteralString (
155- f "mkdir -p ~/.ssh\n "
156- f "echo \" ${{{{ secrets.SSH_KEY }} }}\" > ~/.ssh/id_ed25519\n "
157- f "chmod 600 ~/.ssh/id_ed25519\n "
158- f "ssh-keyscan -H \" ${{{{ secrets.SSH_IP }} }}\" >> ~/.ssh/known_hosts"
155+ "mkdir -p ~/.ssh\n "
156+ "echo \" ${{ secrets.SSH_KEY }}\" > ~/.ssh/id_ed25519\n "
157+ "chmod 600 ~/.ssh/id_ed25519\n "
158+ "ssh-keyscan -H \" ${{ secrets.SSH_IP }}\" >> ~/.ssh/known_hosts"
159159 )
160160 },
161161 {
@@ -166,16 +166,22 @@ def gen_workflow(package_name, package_data):
166166 f"m_dist=\" ${{{{ matrix.distro }}}}\" \n "
167167 f"m_arch=\" ${{{{ matrix.architecture }}}}\" \n "
168168 f"../scripts/packer.sh \" ${{m_name}}\" \" ${{m_dist}}\" \" ${{m_arch}}\" \n "
169- "debfile=(*${m_arch}.deb)\n "
170- "echo \" DEBNAME=${debfile}\" >> $GITHUB_ENV"
169+ f"debfiles=(*.deb)\n "
170+ f"if [ ${{#debfiles[@]}} -gt 1 ]; then\n "
171+ f" echo \" DEBNAME=${{m_name}}:${{m_arch}}@${{m_dist}}\" >> $GITHUB_ENV\n "
172+ f" echo \" DEBPATH=out\" >> $GITHUB_ENV\n "
173+ f"else\n "
174+ f" echo \" DEBNAME=${{debfiles[0]}}@${{m_dist}}\" >> $GITHUB_ENV\n "
175+ f" echo \" DEBPATH=out/${{debfiles[0]}}\" >> $GITHUB_ENV\n "
176+ f"fi"
171177 )
172178 },
173179 {
174180 "name" : "Upload .deb files" ,
175181 "uses" : "actions/upload-artifact@v4" ,
176182 "with" : {
177- "name" : "${{ env.DEBNAME }}@${{ matrix.distro }} " ,
178- "path" : "out/ ${{ env.DEBNAME }}"
183+ "name" : "${{ env.DEBNAME }}" ,
184+ "path" : "${{ env.DEBPATH }}"
179185 }
180186 },
181187 {
@@ -186,10 +192,12 @@ def gen_workflow(package_name, package_data):
186192 f"REMOTE_PORT=${{{{ secrets.APTLY_PORT }}}}\n "
187193 f"REPO_URL=\" http://localhost:${{LOCAL_PORT}}/api/repos/ppr-${{{{ matrix.distro }}}}/packages\" \n "
188194 f"ssh -i ~/.ssh/id_ed25519 -fN -L ${{LOCAL_PORT}}:localhost:${{REMOTE_PORT}} \" ${{LOCATION}}\" \n "
189- f"rm_str=\" $(./scripts/checker.sh overflow { package_name } ${{{{ matrix.distro }}}} ${{{{ matrix.architecture }}}} { overflow } ${{REPO_URL}})\" \n "
190- f"if [ -n \" ${{rm_str}}\" ]; then\n echo \" Removing ${{rm_str}}...\" \n "
191- f" curl -X DELETE -H 'Content-Type: application/json' --data \" {{\\ \" PackageRefs\\ \" : [${{rm_str}}]}}\" \" ${{REPO_URL}}\" | jq\n fi\n "
192- f"curl -X POST -F file=@out/${{{{ env.DEBNAME }}}} \" http://localhost:${{LOCAL_PORT}}/api/files/${{{{ matrix.distro }}}}\" | jq\n "
195+ f"children=($(curl -fsSL https://pacstall.dev/api/packages/{ package_name } | jq -r '.baseChildren[]'))\n "
196+ f"if [ ${{#children[@]}} -le 1 ]; then\n children=(\" { package_name } \" )\n fi\n for i in \" ${{children[@]}}\" ; do\n "
197+ f" unset rm_str\n rm_str=\" $(./scripts/checker.sh overflow ${{i}} ${{{{ matrix.distro }}}} ${{{{ matrix.architecture }}}} { overflow } ${{REPO_URL}})\" \n "
198+ f" if [ -n \" ${{rm_str}}\" ]; then\n echo \" Removing ${{rm_str}}...\" \n "
199+ f" curl -X DELETE -H 'Content-Type: application/json' --data \" {{\\ \" PackageRefs\\ \" : [${{rm_str}}]}}\" \" ${{REPO_URL}}\" | jq\n fi\n done\n "
200+ f"for i in out/*.deb; do curl -X POST -F file=@${{i}} \" http://localhost:${{LOCAL_PORT}}/api/files/${{{{ matrix.distro }}}}\" | jq; done\n "
193201 f"curl -s -X POST -H 'Content-Type: application/json' \\ \n "
194202 f" \" http://localhost:${{LOCAL_PORT}}/api/repos/ppr-${{{{ matrix.distro }}}}/file/${{{{ matrix.distro }}}}?forceReplace=1\" | jq\n "
195203 f"curl -X PUT -H 'Content-Type: application/json' --data '{{\" Signing\" : {{\" Skip\" : false, \" GpgKey\" : \" ${{{{ secrets.GPG_KEY }}}}\" }}, \" MultiDist\" : true, \" ForceOverwrite\" : true}}' \" http://localhost:${{LOCAL_PORT}}/api/publish/pacstall/pacstall\" | jq\n "
0 commit comments