Skip to content

Commit aa1d5ef

Browse files
PaulDuvallclaude
andcommitted
fix: make SSM storage optional in NPM publish workflow
- Added continue-on-error to SSM operations - Added proper error handling for permission issues - Workflow now continues with publishing even if SSM storage fails - Clear messages guide users on required IAM permissions This allows the workflow to succeed even without ssm:PutParameter and ssm:GetParameter permissions 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 704ff61 commit aa1d5ef

File tree

1 file changed

+17
-7
lines changed

1 file changed

+17
-7
lines changed

.github/workflows/npm-publish-simple.yml

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,20 @@ jobs:
3030
role-to-assume: ${{ vars.AWS_DEPLOYMENT_ROLE }}
3131
aws-region: us-east-1
3232

33-
- name: Store NPM token in SSM
33+
- name: Store NPM token in SSM (Optional)
34+
continue-on-error: true
3435
run: |
35-
aws ssm put-parameter \
36+
if aws ssm put-parameter \
3637
--name "/npm/tokens/PaulDuvall-claude-code" \
3738
--value "${{ inputs.npm_token }}" \
3839
--type "SecureString" \
3940
--overwrite \
40-
--description "NPM token for publishing @paulduvall/claude-dev-toolkit"
41-
echo "✅ NPM token stored in SSM Parameter Store"
41+
--description "NPM token for publishing @paulduvall/claude-dev-toolkit" 2>/dev/null; then
42+
echo "✅ NPM token stored in SSM Parameter Store"
43+
else
44+
echo "⚠️ Could not store token in SSM (insufficient permissions). Continuing with publish..."
45+
echo "To enable SSM storage, add ssm:PutParameter permission to your IAM role"
46+
fi
4247
4348
- name: Configure NPM
4449
run: |
@@ -50,8 +55,13 @@ jobs:
5055
cd claude-dev-toolkit
5156
npm publish --access public
5257
53-
- name: Verify SSM parameter
58+
- name: Verify SSM parameter (Optional)
59+
continue-on-error: true
5460
run: |
5561
echo "Verifying SSM parameter exists..."
56-
aws ssm get-parameter --name "/npm/tokens/PaulDuvall-claude-code" --query 'Parameter.Name' --output text
57-
echo "✅ SSM parameter verified"
62+
if aws ssm get-parameter --name "/npm/tokens/PaulDuvall-claude-code" --query 'Parameter.Name' --output text 2>/dev/null; then
63+
echo "✅ SSM parameter verified"
64+
else
65+
echo "⚠️ SSM parameter not accessible (insufficient permissions or not created)"
66+
echo "To enable SSM access, add ssm:GetParameter permission to your IAM role"
67+
fi

0 commit comments

Comments
 (0)