Skip to content

feat(aws): add AWS Marketplace target to s3-cloud#4

Draft
pcfreak30 wants to merge 1 commit into
developfrom
feat/aws-marketplace-target
Draft

feat(aws): add AWS Marketplace target to s3-cloud#4
pcfreak30 wants to merge 1 commit into
developfrom
feat/aws-marketplace-target

Conversation

@pcfreak30

Copy link
Copy Markdown
Member

Summary

Adds a complete AWS Marketplace target for s3-cloud, mirroring the existing DigitalOcean and Vultr targets.

What's included

  • deploy/aws/ — Packer AMI template (HVM/EBS-backed, x86-64, us-east-1), CloudFormation deployment template, Makefile, submit helper, README, AGENTS.md.
  • deploy/aws/scripts/ — per-instance cloud-init provisioning, AMI cleanup/validation, EC2/AMI pruning helpers.
  • deploy/aws/marketplace/ — AMMP submission assets: usage instructions, security group recommendations, submission checklist.
  • CI wiringpacker-ci-aws.yml, packer-release-aws.yml, and dispatch entries in packer-ci.yml / packer-release.yml.
  • Local validation — new scripts/validate-aws.sh that checks Packer formatting, CloudFormation JSON, shell/Python syntax, and marketplace docs without needing AWS credentials.
  • Bug fix — corrects the auto-update disable instructions in packer/scripts/install-s3-server.sh from a docker exec ... rm command to the documented touch /state/autoupdate.disabled flag-file API.
  • Docs — updates docs/platform-support.md with AWS row/feature parity.

Verification

Ran ./scripts/validate-aws.sh locally:

  • CloudFormation JSON parses ✅
  • Shell scripts pass bash -n
  • Python files compile ✅
  • Makefile syntax check ✅
  • Marketplace docs present and non-empty ✅

Out of scope

  • AWS Marketplace seller onboarding and AMMP submission.
  • Paid/BYOL pricing decision.
  • End-to-end AWS build cost approval.

@kody-ai

This comment has been minimized.

Comment thread packer/scripts/install-s3-server.sh
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 6c6c1e2 to 51b7a84 Compare July 18, 2026 07:09
@kody-ai

This comment has been minimized.

@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 51b7a84 to 6bcdfd2 Compare July 18, 2026 07:15
Comment thread .github/workflows/packer-ci.yml
Comment thread .github/workflows/packer-release.yml Outdated
Comment thread packer/scripts/install-s3-server.sh
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 6bcdfd2 to 9887e48 Compare July 18, 2026 07:21
@kody-ai

This comment has been minimized.

@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 9887e48 to fa83621 Compare July 18, 2026 07:37
@kody-ai

This comment has been minimized.

Comment thread .github/workflows/packer-ci.yml
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from fa83621 to 11943f6 Compare July 18, 2026 07:42
@kody-ai

This comment has been minimized.

@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 11943f6 to b769604 Compare July 18, 2026 07:44
Comment thread packer/scripts/install-s3-server.sh
Comment thread packer/scripts/install-s3-server.sh
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from b769604 to 52b6fa0 Compare July 18, 2026 08:01
@kody-ai

This comment has been minimized.

Comment thread .github/workflows/packer-release.yml Outdated
Comment thread .github/workflows/packer-release.yml Outdated
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 52b6fa0 to 4e934f2 Compare July 18, 2026 08:04
@kody-ai

This comment has been minimized.

Comment thread .github/workflows/packer-ci.yml
Comment thread packer/scripts/install-s3-server.sh
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 4e934f2 to 76cd829 Compare July 18, 2026 08:10
@kody-ai

This comment has been minimized.

Comment thread .github/workflows/packer-ci.yml
Comment thread .github/workflows/packer-ci.yml
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 385b752 to 6793e89 Compare July 18, 2026 12:13
Comment thread .github/workflows/packer-ci.yml
Comment thread .github/workflows/packer-ci.yml
Comment thread scripts/validate-aws.sh
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 6793e89 to 310bb7f Compare July 18, 2026 14:01
@kody-ai

This comment has been minimized.

@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch 2 times, most recently from e6cfc7e to 29bc44c Compare July 18, 2026 14:05
Comment thread .github/workflows/packer-ci.yml
Comment thread .github/workflows/packer-ci.yml
Comment thread packer/scripts/install-s3-server.sh
Comment thread scripts/validate-aws.sh
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 29bc44c to cfea6b0 Compare July 18, 2026 15:23
@kody-ai

This comment has been minimized.

Comment thread .github/workflows/packer-ci-aws.yml
Comment thread .github/workflows/packer-ci.yml
Comment thread .github/workflows/packer-ci.yml
Comment thread packer/scripts/install-s3-server.sh
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from cfea6b0 to 7c5574f Compare July 18, 2026 15:36
@kody-ai

This comment has been minimized.

Comment thread .github/workflows/packer-ci-aws.yml
Comment thread .github/workflows/packer-ci.yml
Comment thread scripts/validate-aws.sh
Comment thread scripts/validate-aws.sh
@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from 7c5574f to bf00144 Compare July 19, 2026 06:31
@kody-ai

kody-ai Bot commented Jul 19, 2026

Copy link
Copy Markdown

Code Review Completed! 🔥

The code review was successfully completed based on your current configurations.

Kody Guide: Usage and Configuration
Interacting with Kody
  • Request a Review: Ask Kody to review your PR manually by adding a comment with the @kody start-review command at the root of your PR.

  • Validate Business Logic: Ask Kody to validate your code against business rules by adding a comment with the @kody -v business-logic command.

  • Provide Feedback: Help Kody learn and improve by reacting to its comments with a 👍 for helpful suggestions or a 👎 if improvements are needed.

Current Kody Configuration
Review Options

The following review options are enabled or disabled:

Options Enabled
Bug
Performance
Security
Business Logic

Access your configuration settings here.

@pcfreak30
pcfreak30 force-pushed the feat/aws-marketplace-target branch from bf00144 to ae15e3f Compare July 19, 2026 06:33
AWS_DEFAULT_REGION: us-east-1
VPC_ID: ${{ env.VPC_ID }}
SUBNET_ID: ${{ env.SUBNET_ID }}
RESCUE_PASSWORD: ${{ github.event.inputs.rescue-password }}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kody code-review Bug high

The github.event.inputs.rescue-password context is empty for workflow_call triggers, silently dropping the operator-supplied rescue password and making the cleanup-on-failure guard always true, which deregisters a failed AMI even when the operator intended to keep it for debugging. Replace github.event.inputs.rescue-password with inputs.rescue-password on both lines.

          RESCUE_PASSWORD: ${{ inputs.rescue-password }}
...
        if: failure() && inputs.rescue-password == ''
Prompt for LLM

File .github/workflows/packer-ci-aws.yml:

Line 156:

The `github.event.inputs.rescue-password` context is empty for `workflow_call` triggers, silently dropping the operator-supplied rescue password and making the `cleanup-on-failure` guard always true, which deregisters a failed AMI even when the operator intended to keep it for debugging. Replace `github.event.inputs.rescue-password` with `inputs.rescue-password` on both lines.

Suggested Code:

          RESCUE_PASSWORD: ${{ inputs.rescue-password }}
...
        if: failure() && inputs.rescue-password == ''

Talk to Kody by mentioning @kody

Was this suggestion helpful? React with 👍 or 👎 to help Kody learn from this interaction.

AWS_DEFAULT_REGION: us-east-1
VPC_ID: ${{ env.VPC_ID }}
SUBNET_ID: ${{ env.SUBNET_ID }}
RESCUE_PASSWORD: ${{ github.event.inputs.rescue-password }}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kody code-review Bug high

The github.event.inputs.rescue-password context is not populated under workflow_call triggers, leaving RESCUE_PASSWORD empty and causing the cleanup-on-failure guard to always deregister the instance even when a rescue password was supplied. Use inputs.rescue-password instead of github.event.inputs.rescue-password on both lines, matching the job's existing use of inputs.cleanup-mode and inputs.pr-number.

          RESCUE_PASSWORD: ${{ inputs.rescue-password }}
...
        if: failure() && inputs.rescue-password == ''
Prompt for LLM

File .github/workflows/packer-ci-aws.yml:

Line 156:

The `github.event.inputs.rescue-password` context is not populated under `workflow_call` triggers, leaving `RESCUE_PASSWORD` empty and causing the `cleanup-on-failure` guard to always deregister the instance even when a rescue password was supplied. Use `inputs.rescue-password` instead of `github.event.inputs.rescue-password` on both lines, matching the job's existing use of `inputs.cleanup-mode` and `inputs.pr-number`.

Suggested Code:

          RESCUE_PASSWORD: ${{ inputs.rescue-password }}
...
        if: failure() && inputs.rescue-password == ''

Talk to Kody by mentioning @kody

Was this suggestion helpful? React with 👍 or 👎 to help Kody learn from this interaction.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant