|
63 | 63 |
|
64 | 64 | # Source: https://github.com/cozystack/cozystack/blob/main/packages/core/installer/Makefile |
65 | 65 | env: |
66 | | - REGISTRY: ghcr.io/urmanac |
| 66 | + REGISTRY: ghcr.io/urmanac/cozystack-assets |
67 | 67 |
|
68 | 68 | jobs: |
69 | 69 | build-cozystack-upstream: |
@@ -178,7 +178,7 @@ jobs: |
178 | 178 | - name: Update upstream dependencies and build with Makefile targets |
179 | 179 | id: build |
180 | 180 | env: |
181 | | - REGISTRY: ${{ env.REGISTRY }}/talos-cozystack-${{ matrix.extension_variant }} |
| 181 | + REGISTRY: ${{ env.REGISTRY }}/talos/cozystack-${{ matrix.extension_variant }} |
182 | 182 | PUSH: 1 |
183 | 183 | LOAD: 0 |
184 | 184 | run: | |
@@ -367,14 +367,26 @@ jobs: |
367 | 367 | EOF |
368 | 368 | |
369 | 369 | # Output validation results |
370 | | - if [ -f "boot/vmlinuz" ]; then |
| 370 | + if [ -f "usr/install/arm64/vmlinuz.efi" ]; then |
| 371 | + KERNEL_DIGEST=$(sha256sum usr/install/arm64/vmlinuz.efi | cut -d' ' -f1) |
| 372 | + echo "kernel-digest=$KERNEL_DIGEST" >> $GITHUB_OUTPUT |
| 373 | + elif [ -f "talos/arm64/boot/vmlinuz" ]; then |
| 374 | + KERNEL_DIGEST=$(sha256sum talos/arm64/boot/vmlinuz | cut -d' ' -f1) |
| 375 | + echo "kernel-digest=$KERNEL_DIGEST" >> $GITHUB_OUTPUT |
| 376 | + elif [ -f "boot/vmlinuz" ]; then |
371 | 377 | KERNEL_DIGEST=$(sha256sum boot/vmlinuz | cut -d' ' -f1) |
372 | | - echo "kernel-digest=sha256:$KERNEL_DIGEST" >> $GITHUB_OUTPUT |
| 378 | + echo "kernel-digest=$KERNEL_DIGEST" >> $GITHUB_OUTPUT |
373 | 379 | fi |
374 | 380 | |
375 | | - if [ -f "boot/initramfs.xz" ]; then |
| 381 | + if [ -f "usr/install/arm64/systemd-boot.efi" ]; then |
| 382 | + INITRAMFS_DIGEST=$(sha256sum usr/install/arm64/systemd-boot.efi | cut -d' ' -f1) |
| 383 | + echo "initramfs-digest=$INITRAMFS_DIGEST" >> $GITHUB_OUTPUT |
| 384 | + elif [ -f "talos/arm64/boot/initramfs.xz" ]; then |
| 385 | + INITRAMFS_DIGEST=$(sha256sum talos/arm64/boot/initramfs.xz | cut -d' ' -f1) |
| 386 | + echo "initramfs-digest=$INITRAMFS_DIGEST" >> $GITHUB_OUTPUT |
| 387 | + elif [ -f "boot/initramfs.xz" ]; then |
376 | 388 | INITRAMFS_DIGEST=$(sha256sum boot/initramfs.xz | cut -d' ' -f1) |
377 | | - echo "initramfs-digest=sha256:$INITRAMFS_DIGEST" >> $GITHUB_OUTPUT |
| 389 | + echo "initramfs-digest=$INITRAMFS_DIGEST" >> $GITHUB_OUTPUT |
378 | 390 | fi |
379 | 391 | |
380 | 392 | echo "asset-count=$ASSET_COUNT" >> $GITHUB_OUTPUT |
@@ -411,7 +423,7 @@ jobs: |
411 | 423 | # Only test container images (not OS filesystem images like Talos) |
412 | 424 | if [[ "$BUILD_OUTPUTS" == *"matchbox"* ]]; then |
413 | 425 | echo "🔍 Testing matchbox container image architecture and functionality..." |
414 | | - MATCHBOX_IMAGE="${{ env.REGISTRY }}/matchbox:latest" |
| 426 | + MATCHBOX_IMAGE="${{ env.REGISTRY }}/matchbox/cozystack-${{ matrix.extension_variant }}:latest" |
415 | 427 | |
416 | 428 | # First check if the image actually exists |
417 | 429 | echo "Checking if matchbox image exists in registry..." |
@@ -491,7 +503,7 @@ jobs: |
491 | 503 | id: meta |
492 | 504 | uses: docker/metadata-action@v5 |
493 | 505 | with: |
494 | | - images: ${{ env.REGISTRY }}/talos-cozystack-${{ matrix.extension_variant }} |
| 506 | + images: ${{ env.REGISTRY }}/talos/cozystack-${{ matrix.extension_variant }} |
495 | 507 | tags: | |
496 | 508 | # Clean Talos version (variant is in repo name now) |
497 | 509 | type=raw,value=${{ steps.build.outputs.talos-version }} |
@@ -591,9 +603,9 @@ jobs: |
591 | 603 | VARIANT="${{ matrix.extension_variant }}" |
592 | 604 | REGISTRY="${{ env.REGISTRY }}" |
593 | 605 | |
594 | | - # Test the talos repository (correct path with /talos suffix) |
| 606 | + # Test the talos repository (correct path with new hierarchy) |
595 | 607 | echo "Testing $VARIANT variant..." |
596 | | - TALOS_REPO="$REGISTRY/talos-cozystack-$VARIANT/talos" |
| 608 | + TALOS_REPO="$REGISTRY/talos/cozystack-$VARIANT" |
597 | 609 | |
598 | 610 | echo "Checking for available tags in: $TALOS_REPO" |
599 | 611 | if crane ls "$TALOS_REPO" 2>/dev/null; then |
@@ -698,46 +710,44 @@ jobs: |
698 | 710 | |
699 | 711 | | Asset | Digest | |
700 | 712 | |-------|--------| |
701 | | - | **Kernel** | \`${KERNEL_DIGEST:-'pending'}\` | |
702 | | - | **Initramfs** | \`${INITRAMFS_DIGEST:-'pending'}\` | |
| 713 | + | **Kernel** | \`${KERNEL_DIGEST:-'not found'}\` | |
| 714 | + | **Boot Loader** | \`${INITRAMFS_DIGEST:-'not found'}\` | |
703 | 715 | |
704 | 716 | ## Container Images |
705 | 717 | |
706 | 718 | Two variants are built for different use cases: |
707 | 719 | |
708 | | - ### spin-tailscale (Full Stack) |
| 720 | + ### talos/cozystack-spin-tailscale (Full Stack) |
709 | 721 | Includes Spin runtime + Tailscale networking for complete demo environment. |
710 | 722 | |
711 | 723 | \`\`\`bash |
712 | | - docker pull ${{ env.REGISTRY }}/talos-cozystack-spin-tailscale:demo-stable |
| 724 | + docker pull ${{ env.REGISTRY }}/talos/cozystack-spin-tailscale:demo-stable |
713 | 725 | \`\`\` |
714 | 726 | |
715 | | - ### spin-only (Minimal) |
| 727 | + ### talos/cozystack-spin-only (Minimal) |
716 | 728 | Includes only Spin runtime for lightweight deployments. |
717 | 729 | |
718 | 730 | \`\`\`bash |
719 | | - docker pull ${{ env.REGISTRY }}/talos-cozystack-spin-only:demo-stable |
| 731 | + docker pull ${{ env.REGISTRY }}/talos/cozystack-spin-only:demo-stable |
720 | 732 | \`\`\` |
721 | 733 | |
722 | 734 | ## Asset Extraction |
723 | 735 | |
724 | | - Extract complete ARM64 asset bundle with validation: |
| 736 | + Extract complete Talos installer assets: |
725 | 737 | |
726 | 738 | \`\`\`bash |
727 | | - # Create asset directory |
728 | | - mkdir -p /opt/cozystack-assets |
| 739 | + # Create local assets directory |
| 740 | + mkdir -p ./cozystack-assets |
729 | 741 | |
730 | | - # Extract from spin-tailscale image |
731 | | - docker create --name temp-extract ${{ env.REGISTRY }}/talos-cozystack-spin-tailscale:demo-stable |
732 | | - docker cp temp-extract:/assets/. /opt/cozystack-assets/ |
| 742 | + # Extract from talos/cozystack-spin-tailscale image (recommended) |
| 743 | + docker create --name temp-extract ${{ env.REGISTRY }}/talos/cozystack-spin-tailscale:demo-stable |
| 744 | + docker cp temp-extract:/. ./cozystack-assets |
733 | 745 | docker rm temp-extract |
734 | 746 | |
735 | | - # Verify integrity |
736 | | - cd /opt/cozystack-assets/talos/arm64 |
737 | | - sha256sum -c checksums.sha256 |
738 | | - |
739 | | - # View build report |
740 | | - cat validation/build-report.txt |
| 747 | + # Key assets are located at: |
| 748 | + # ./cozystack-assets/usr/install/arm64/vmlinuz.efi |
| 749 | + # ./cozystack-assets/usr/install/arm64/systemd-boot.efi |
| 750 | + # ./cozystack-assets/usr/bin/installer |
741 | 751 | \`\`\` |
742 | 752 | EOF |
743 | 753 |
|
|
0 commit comments