diff --git a/.forgejo/workflows/stl.yaml b/.forgejo/workflows/stl.yaml new file mode 100644 index 0000000..fbd9df7 --- /dev/null +++ b/.forgejo/workflows/stl.yaml @@ -0,0 +1,50 @@ +name: Create STL + +on: + workflow_dispatch: + inputs: + label: + description: 'Your name' + default: 'Zero Cool' + required: true + type: string + icon: + description: 'Little icon above the label' + default: thing-logos/glider.dxf + type: choice + required: false + options: + - thing-logos/glider.dxf + - thing-logos/camprocket.dxf + - thing-logos/Club_mate_logo.dxf + - thing-logos/chaosknoten.dxf + +jobs: + + openscad: + runs-on: docker + container: + image: node:alpine + + steps: + - uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Install depdencies + run: apk add openscad envsubst + + - name: Generate OpenSCAD file + run: envsubst -i ci-template.scad > ci.scad + env: + LABEL: "${{ inputs.label }}" + ICON: "${{ inputs.icon }}" + + - name: Render to STL + run: openscad ci.scad --export-format binstl -o ci.stl ci.scad + + # - uses: actions/upload-artifact@v4 + # with: + # name: bottle-clip.stl + # path: ci.stl + # overwrite: true diff --git a/ci-template.scad b/ci-template.scad new file mode 100644 index 0000000..50d756a --- /dev/null +++ b/ci-template.scad @@ -0,0 +1,3 @@ +include + +bottle_clip(name="$LABEL", logo="$ICON");