|
| 1 | +name: Build raspOVOS-gui |
| 2 | +on: |
| 3 | + workflow_dispatch: |
| 4 | + |
| 5 | +jobs: |
| 6 | + pi-gen-ovos: |
| 7 | + runs-on: ubuntu-latest |
| 8 | + steps: |
| 9 | + - uses: actions/checkout@v2 |
| 10 | + with: |
| 11 | + fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. |
| 12 | + - uses: usimd/pi-gen-action@v1 |
| 13 | + id: build |
| 14 | + with: |
| 15 | + # Final image name. |
| 16 | + image-name: raspOVOS-gui-dev |
| 17 | + |
| 18 | + # List of stage name to execute in given order. Relative and absolute paths to |
| 19 | + # custom stage directories are allowed here. Note that by default pi-gen exports |
| 20 | + # images in stage2 (lite), stage4 and stage5. You probably want to hook in custom |
| 21 | + # stages before one of the exported stages. Otherwise, the action will make sure |
| 22 | + # any custom stage will include an image export directive. |
| 23 | + stage-list: stage0 stage1 stage2 ./stage-prep ./stage-core ./stage-phal ./stage-audio ./stage-skills ./stage-hivemind ./stage-ggwave ./stage-gui ./stage-finalize |
| 24 | + |
| 25 | + # Host name of the image. |
| 26 | + hostname: raspOvos |
| 27 | + |
| 28 | + # Default keyboard keymap. |
| 29 | + keyboard-keymap: us |
| 30 | + |
| 31 | + # Default keyboard layout. |
| 32 | + keyboard-layout: English (US) |
| 33 | + |
| 34 | + # Default locale of the system image. |
| 35 | + locale: en_US.UTF-8 |
| 36 | + |
| 37 | + # Default wifi country |
| 38 | + wpa-country: US |
| 39 | + |
| 40 | + # Default timezone |
| 41 | + timezone: America/Denver |
| 42 | + |
| 43 | + # Name of the initial user account. |
| 44 | + username: ovos |
| 45 | + |
| 46 | + # Password of the intial user account, locked if empty. |
| 47 | + password: 'ovos' |
| 48 | + |
| 49 | + # Compression to apply on final image (either "none", "zip", "xz" or "gz"). |
| 50 | + compression: zip |
| 51 | + |
| 52 | + # Compression level to be used. From 0 to 9 (refer to the tool man page for more |
| 53 | + # information on this. Usually 0 is no compression but very fast, up to 9 with the |
| 54 | + # best compression but very slow). |
| 55 | + compression-level: 6 |
| 56 | + |
| 57 | + # Disable the renaming of the first user during the first boot. This make it so |
| 58 | + # 'username' stays activated. 'username' must be set for this to work. Please be |
| 59 | + # aware of the implied security risk of defining a default username and password |
| 60 | + # for your devices. |
| 61 | + disable-first-boot-user-rename: 1 |
| 62 | + |
| 63 | + # Additional options to include in PIGEN_DOCKER_OPTS |
| 64 | + docker-opts: '' |
| 65 | + |
| 66 | + # Set whether a NOOBS image should be built as well. If enabled, the output |
| 67 | + # directory containing the NOOBS files will be saved as output variable |
| 68 | + # 'image-noobs-path'. |
| 69 | + enable-noobs: false |
| 70 | + |
| 71 | + # Enable SSH access to Pi. |
| 72 | + enable-ssh: 1 |
| 73 | + |
| 74 | + # If this feature is enabled, the action will configure pi-gen to not export any |
| 75 | + # stage as image but the last one defined in property 'stage-list'. This is |
| 76 | + # helpful when building a single image flavor (in contrast to building a |
| 77 | + # lite/server and full-blown desktop image), since it speeds up the build process |
| 78 | + # significantly. |
| 79 | + export-last-stage-only: true |
| 80 | + |
| 81 | + # Comma or whitespace separated list of additional packages to install on host |
| 82 | + # before running pi-gen. Use this list to add any packages your custom stages may |
| 83 | + # require. Note that this is not affecting the final image. In order to add |
| 84 | + # additional packages, you need to add a respective 'XX-packages' file in your |
| 85 | + # custom stage. |
| 86 | + extra-host-dependencies: '' |
| 87 | + |
| 88 | + # Comma or whitespace separated list of additional modules to load on host before |
| 89 | + # running pi-gen. If your custom stage requires additional software or kernel |
| 90 | + # modules to be loaded, add them here. Note that this is not meant to configure |
| 91 | + # modules to be loaded in the target image. |
| 92 | + extra-host-modules: '' |
| 93 | + |
| 94 | + # Token to use for checking out pi-gen repo. |
| 95 | + github-token: ${{ github.token }} |
| 96 | + |
| 97 | + # Path where selected pi-gen ref will be checked out to. If the path does not yet |
| 98 | + # exist, it will be created (including its parents). |
| 99 | + pi-gen-dir: pi-gen |
| 100 | + |
| 101 | + # GitHub repository to fetch pi-gen from, must be a fork from RPi-Distro/pi-gen. |
| 102 | + |
| 103 | + pi-gen-repository: RPi-Distro/pi-gen |
| 104 | + |
| 105 | + # Release version of pi-gen to use. This can both be a branch or tag name known in |
| 106 | + # the pi-gen repository. |
| 107 | + pi-gen-version: arm64 |
| 108 | + |
| 109 | + # The release version to build images against. Valid values are jessie, stretch, |
| 110 | + # buster, bullseye, and testing. |
| 111 | + release: bookworm |
| 112 | + |
| 113 | + # Setting to `1` will prevent pi-gen from dropping the "capabilities" feature. |
| 114 | + # Generating the root filesystem with capabilities enabled and running it from a |
| 115 | + # filesystem that does not support capabilities (like NFS) can cause issues. Only |
| 116 | + # enable this if you understand what it is. |
| 117 | + setfcap: '' |
| 118 | + |
| 119 | + # Use qcow2 images to reduce space and runtime requirements. |
| 120 | + use-qcow2: 1 |
| 121 | + |
| 122 | + # Print all output from pi-gen. |
| 123 | + verbose-output: true |
| 124 | + |
| 125 | + - name: copy file via ssh password |
| 126 | + uses: appleboy/scp-action@master |
| 127 | + with: |
| 128 | + host: ovosimages.ziggyai.online |
| 129 | + username: ${{ secrets.USERNAME }} |
| 130 | + password: ${{ secrets.PASSWORD }} |
| 131 | + port: ${{ secrets.SSH_PORT }} |
| 132 | + source: "${{ steps.build.outputs.image-path }}" |
| 133 | + target: "raspbian/development" |
| 134 | + strip_components: 4 |
| 135 | + |
0 commit comments