-
-
Notifications
You must be signed in to change notification settings - Fork 0
Release: v1.0.0 #18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Release: v1.0.0 #18
Changes from all commits
Commits
Show all changes
58 commits
Select commit
Hold shift + click to select a range
c5b84dd
Initial plan
Copilot 74d228a
Initial plan
Copilot bc7fe6e
Phase 1: Update package.json, add .npmrc, generate pnpm-lock.yaml, fi…
Copilot 52ce6b5
Initial plan
Copilot 0f40ad8
feat: install ESLint with security plugins and fix linting issues
Copilot 05ec3e4
feat: add VSCode ESLint integration settings
Copilot aeaf272
feat: integrate ESLint with GitHub Actions and documentation
Copilot f9fc456
Phase 2: Update Dockerfile to use pnpm instead of yarn
Copilot eb3f3c7
Add comprehensive dev container configuration with pnpm and GitHub Co…
Copilot 0d50825
docs: add comprehensive ESLint documentation and fix lint scripts
Copilot 7e7c0ce
Phase 3 & 4: Update CI/CD workflows and documentation for pnpm
Copilot 00fac44
Initial plan
Copilot ca738de
Improve dev container configuration for better reliability
Copilot e3ff851
Add comprehensive setup script for dev container with Redis CLI support
Copilot c09511f
Update .gitignore to reflect pnpm usage and ignore npm/yarn lock files
Copilot 7f6afd9
Add Vitest setup with configuration and example test
Copilot 4aa33c9
Add comprehensive testing documentation and update guides
Copilot 4f84a01
Add test integration to CI/CD workflows
Copilot fa3c2a0
Fix GitHub Actions workflow - setup pnpm before Node.js for proper ca…
Copilot 8ade4a2
✨ tweak: update pnpm version to 9.15.4
warengonzaga 9a52c61
✨ tweak: migrate from yarn to pnpm package manager
warengonzaga c73f674
Initial plan
Copilot b14478d
feat: migrate to container-build-flow-action for automated builds
Copilot bf8643e
fix: add explicit permissions to build workflow for security
Copilot b92bdaa
Merge pull request #19 from wgtechlabs/copilot/migrate-to-container-b…
warengonzaga 3798c17
fix: update container-build-flow-action version from @v1 to @v1.0.0
warengonzaga a7ba114
fix: temporarily disable pr-comment due to action output formatting i…
warengonzaga 64df4d5
✨ tweak: update the action version and enabled the comment feature
warengonzaga 3af8f52
✨ tweak: update pnpm version
warengonzaga ca94ec2
✨ tweak: reorder imports
warengonzaga a330a62
Merge pull request #16 from wgtechlabs/copilot/fix-02a62285-6cc8-4134…
warengonzaga d761cd7
☕ chore: remove dev container files
warengonzaga 068be69
Merge branch 'dev' into copilot/fix-2f50d303-2814-4614-bbb9-3d384f318448
warengonzaga 0fe6ce5
☕ chore: update linting commands
warengonzaga 3116b13
🐛 fix: fix validate action
warengonzaga 8e297c7
☕ chore: update lock file
warengonzaga e33f92e
Merge pull request #15 from wgtechlabs/copilot/fix-2f50d303-2814-4614…
warengonzaga d4bc6d8
Merge dev branch and update to pnpm
Copilot 720719c
Update documentation to use pnpm and update lockfile with Vitest depe…
Copilot 0e36721
Fix ESLint configuration to exclude test files and Vitest config
Copilot 43a3527
Fix validate.yml workflow to use pnpm instead of yarn for test commands
Copilot ac12ca9
🐛 fix: validate.yml workflow
warengonzaga 62f5303
Merge branch 'copilot/fix-40e7d887-8f6e-4881-bdcf-6e44d546638b' of gi…
warengonzaga a6523b3
Merge pull request #17 from wgtechlabs/copilot/fix-40e7d887-8f6e-4881…
warengonzaga 9146551
☕ chore: remove devcontainer config
warengonzaga 2db40fd
🐛 fix: validate workflow and eslint
warengonzaga ef0c2f5
🐛 fix: error handling in processing
warengonzaga 34c6e18
☕ chore: update container build action
warengonzaga 3f96464
☕ chore: snyk rules
warengonzaga e38c43f
☕ chore: update container build action
warengonzaga af6df3c
☕ chore: update node version to 22
warengonzaga 12b4b70
☕ chore: update docs node version to 22
warengonzaga 395ac50
☕ chore: update testing instructions
warengonzaga 971989f
🚀 trigger: test pr comment with v1.0.3
warengonzaga 243c7ae
☕ chore: update container build action
warengonzaga 7667b6a
☕ chore: update eslint config links
warengonzaga d9f930a
Merge branch 'main' into dev
warengonzaga 5478988
☕ chore: update readme for enhancements
warengonzaga File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,74 +1,90 @@ | ||
| name: Build | ||
|
|
||
| on: | ||
| pull_request: | ||
| branches: [dev, main] | ||
| push: | ||
| branches: [dev] | ||
|
|
||
| env: | ||
| REGISTRY_DOCKERHUB: wgtechlabs/unthread-webhook-server | ||
| REGISTRY_GHCR: ghcr.io/wgtechlabs/unthread-webhook-server | ||
|
|
||
| jobs: | ||
| build-dev: | ||
| name: Build Development Images | ||
| test: | ||
| name: Run Tests | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Setup Docker Buildx | ||
| uses: docker/setup-buildx-action@v3 | ||
|
|
||
| - name: Login to Docker Hub | ||
| uses: docker/login-action@v3 | ||
| - name: Setup pnpm | ||
| uses: pnpm/action-setup@v4 | ||
| with: | ||
| username: ${{ secrets.DOCKER_HUB_USERNAME }} | ||
| password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | ||
| version: 9.15.4 | ||
|
|
||
| - name: Login to GitHub Container Registry | ||
| uses: docker/login-action@v3 | ||
| - name: Setup Node.js | ||
| uses: actions/setup-node@v4 | ||
| with: | ||
| registry: ghcr.io | ||
| username: ${{ github.actor }} | ||
| password: ${{ secrets.GITHUB_TOKEN }} | ||
| node-version: '22' | ||
| cache: 'pnpm' | ||
|
|
||
| - name: Extract metadata | ||
| id: meta | ||
| run: | | ||
| echo "short_sha=${GITHUB_SHA::7}" >> $GITHUB_OUTPUT | ||
| echo "build_date=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> $GITHUB_OUTPUT | ||
|
|
||
| - name: Build and push development images | ||
| uses: docker/build-push-action@v5 | ||
| - name: Install dependencies | ||
| run: pnpm install --frozen-lockfile | ||
|
|
||
| - name: Type checking | ||
| run: pnpm type-check | ||
|
|
||
| - name: Run tests | ||
| run: pnpm test | ||
|
|
||
| - name: Generate coverage | ||
| run: pnpm test:coverage | ||
| continue-on-error: true | ||
|
|
||
| build: | ||
| name: Build Container Images | ||
| runs-on: ubuntu-latest | ||
| needs: test | ||
| permissions: | ||
| contents: read | ||
| packages: write | ||
| pull-requests: write | ||
|
|
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Build and Push Container | ||
| uses: wgtechlabs/[email protected] | ||
| with: | ||
| # Registry Configuration | ||
| registry: both | ||
| dockerhub-username: ${{ secrets.DOCKER_HUB_USERNAME }} | ||
| dockerhub-token: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | ||
|
|
||
| # Branch Configuration | ||
| main-branch: main | ||
| dev-branch: dev | ||
|
|
||
| # Image Configuration | ||
| image-name: unthread-webhook-server | ||
| dockerfile: ./Dockerfile | ||
| context: . | ||
| push: true | ||
| platforms: linux/amd64 | ||
| tags: | | ||
| ${{ env.REGISTRY_DOCKERHUB }}:dev | ||
| ${{ env.REGISTRY_DOCKERHUB }}:dev-${{ steps.meta.outputs.short_sha }} | ||
| ${{ env.REGISTRY_GHCR }}:dev | ||
| ${{ env.REGISTRY_GHCR }}:dev-${{ steps.meta.outputs.short_sha }} | ||
|
|
||
| # Build Arguments | ||
| build-args: | | ||
| NODE_VERSION=22.21-alpine3.23 | ||
| RAILWAY_SERVICE_ID=${{ secrets.RAILWAY_SERVICE_ID }} | ||
|
|
||
| # Labels | ||
| labels: | | ||
| org.opencontainers.image.title=Unthread Webhook Server | ||
| org.opencontainers.image.description=A reliable, production-ready Node.js server for processing Unthread.io webhooks with signature verification and smart platform handling. | ||
| org.opencontainers.image.version=dev-${{ steps.meta.outputs.short_sha }} | ||
| org.opencontainers.image.created=${{ steps.meta.outputs.build_date }} | ||
| org.opencontainers.image.revision=${{ github.sha }} | ||
| org.opencontainers.image.source=${{ github.server_url }}/${{ github.repository }} | ||
| cache-from: type=gha | ||
| cache-to: type=gha,mode=max | ||
| org.opencontainers.image.url=${{ github.server_url }}/${{ github.repository }} | ||
| org.opencontainers.image.licenses=GPL-3.0 | ||
|
|
||
| - name: Development build summary | ||
| run: | | ||
| echo "## 🔨 Development Build Complete" >> $GITHUB_STEP_SUMMARY | ||
| echo "**Images built and pushed:**" >> $GITHUB_STEP_SUMMARY | ||
| echo "- \`${{ env.REGISTRY_DOCKERHUB }}:dev\`" >> $GITHUB_STEP_SUMMARY | ||
| echo "- \`${{ env.REGISTRY_DOCKERHUB }}:dev-${{ steps.meta.outputs.short_sha }}\`" >> $GITHUB_STEP_SUMMARY | ||
| echo "- \`${{ env.REGISTRY_GHCR }}:dev\`" >> $GITHUB_STEP_SUMMARY | ||
| echo "- \`${{ env.REGISTRY_GHCR }}:dev-${{ steps.meta.outputs.short_sha }}\`" >> $GITHUB_STEP_SUMMARY | ||
| echo "**Test the dev image:**" >> $GITHUB_STEP_SUMMARY | ||
| echo "\`\`\`bash" >> $GITHUB_STEP_SUMMARY | ||
| echo "docker pull ${{ env.REGISTRY_DOCKERHUB }}:dev" >> $GITHUB_STEP_SUMMARY | ||
| echo "\`\`\`" >> $GITHUB_STEP_SUMMARY | ||
| # Features | ||
| pr-comment-enabled: true | ||
| cache-enabled: true | ||
| provenance: true | ||
| sbom: true |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| # pnpm configuration | ||
| # Use shamefully-hoist to make peer dependencies available | ||
| # This resolves TypeScript type inference issues with nested dependencies | ||
| shamefully-hoist=true | ||
|
|
||
| # Public hoist pattern - hoist @redis packages to resolve TypeScript type issues | ||
| public-hoist-pattern[]=@redis/* | ||
|
|
||
| # Auto-install peers to prevent missing peer dependency warnings | ||
| auto-install-peers=true | ||
|
|
||
| # Disable strict peer dependency checking to allow auto-install-peers to resolve mismatches | ||
| strict-peer-dependencies=false | ||
warengonzaga marked this conversation as resolved.
Show resolved
Hide resolved
coderabbitai[bot] marked this conversation as resolved.
Show resolved
Hide resolved
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,10 +1,12 @@ | ||
| { | ||
| "recommendations": [ | ||
| "dbaeumer.vscode-eslint", | ||
| "vitest.explorer", | ||
| "bierner.markdown-preview-github-styles", | ||
| "bierner.github-markdown-preview", | ||
| "bierner.markdown-shiki", | ||
| "bierner.color-info", | ||
| "oderwat.indent-rainbow", | ||
| "warengonzaga.bini-theme", | ||
| "warengonzaga.bini-theme" | ||
| ] | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,28 @@ | ||
| { | ||
| "editor.formatOnSave": false, | ||
| "editor.codeActionsOnSave": { | ||
| "source.fixAll.eslint": "explicit" | ||
| }, | ||
| "eslint.validate": [ | ||
| "javascript", | ||
| "typescript" | ||
| ], | ||
| "eslint.workingDirectories": [ | ||
| { | ||
| "mode": "auto" | ||
| } | ||
| ], | ||
| "eslint.lintTask.enable": true, | ||
| "typescript.tsdk": "node_modules/typescript/lib", | ||
| "typescript.enablePromptUseWorkspaceTsdk": true, | ||
| "[typescript]": { | ||
| "editor.defaultFormatter": "dbaeumer.vscode-eslint" | ||
| }, | ||
| "[javascript]": { | ||
| "editor.defaultFormatter": "dbaeumer.vscode-eslint" | ||
| }, | ||
| "vitest.enable": true, | ||
| "vitest.commandLine": "pnpm test:watch", | ||
| "python-envs.defaultEnvManager": "ms-python.python:system", | ||
| "python-envs.pythonProjects": [] | ||
| } |
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.