{"id":27166190,"url":"https://github.com/dimonets/github-actions-example-nodejs","last_synced_at":"2026-04-18T01:01:17.898Z","repository":{"id":253591314,"uuid":"843953846","full_name":"dimonets/github-actions-example-nodejs","owner":"dimonets","description":"Example CI/CD workflow implementation for NodeJS app using GitHub Actions (support AWS ECS and Azure ACI).","archived":false,"fork":false,"pushed_at":"2024-08-18T05:27:34.000Z","size":60,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-06T03:41:03.536Z","etag":null,"topics":["aws-ecs","aws-ecs-fargate","azure","azure-aci","cicd","github-actions","nodejs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dimonets.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-08-17T23:27:44.000Z","updated_at":"2024-08-18T17:02:56.000Z","dependencies_parsed_at":"2025-06-06T03:45:36.800Z","dependency_job_id":null,"html_url":"https://github.com/dimonets/github-actions-example-nodejs","commit_stats":null,"previous_names":["dimonets/github-actions-example-nodejs"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dimonets/github-actions-example-nodejs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dimonets%2Fgithub-actions-example-nodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dimonets%2Fgithub-actions-example-nodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dimonets%2Fgithub-actions-example-nodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dimonets%2Fgithub-actions-example-nodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dimonets","download_url":"https://codeload.github.com/dimonets/github-actions-example-nodejs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dimonets%2Fgithub-actions-example-nodejs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31952206,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"ssl_error","status_checked_at":"2026-04-18T00:39:20.671Z","response_time":62,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws-ecs","aws-ecs-fargate","azure","azure-aci","cicd","github-actions","nodejs"],"created_at":"2025-04-09T03:38:33.820Z","updated_at":"2026-04-18T01:01:17.876Z","avatar_url":"https://github.com/dimonets.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# github-actions-example-nodejs\nExample CI/CD workflow implementation for NodeJS app using GitHub Actions\n\n### Build and Test Workflow (CI)\nMore info: https://dev.to/olumidenwosu/implementing-continuous-integration-for-nodejs-apps-with-github-actions-1ag2\n\n![Build and Test Workflow](https://github.com/dimonets/github-actions-example-nodejs/actions/workflows/build-and-test.yml/badge.svg)\n\n### Deploy to AWS ECS Fargate Workflow (CD)\nMore info: https://medium.com/@enelakuffo/deploying-a-node-js-application-to-aws-ecs-fargate-with-github-actions-8a350616b979\n\nNote:\n1. Make sure to setup actions repository secrets in GitHub project for AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY\n2. Make sure security group has inboud rule to allow traffic on 80 and outbound rule to allow traffic to 587 (for ECR access)\n3. Make sure task execution role has correct policies:\n\n```\n{\n    \"Version\": \"2012-10-17\",\n    \"Statement\": [\n        {\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"ecr:GetAuthorizationToken\",\n                \"ecr:BatchCheckLayerAvailability\",\n                \"ecr:GetDownloadUrlForLayer\",\n                \"ecr:BatchGetImage\",\n                \"logs:CreateLogStream\",\n                \"logs:PutLogEvents\"\n            ],\n            \"Resource\": \"*\"\n        }\n    ]\n}\n```\n\nLive URL: [find in AWS console]\n\n![Deploy to AWS ECS Fargate Workflow](https://github.com/dimonets/github-actions-example-nodejs/actions/workflows/deploy-aws-ecs-fargate.yml/badge.svg)\n\n### Deploy to Azure ACI Workflow (CD)\nMore info: https://learn.microsoft.com/en-us/azure/container-instances/container-instances-github-action#code-try-0\n\nNote:\n1. Make sure to setup actions repository secrets in GitHub project for AZURE_CREDENTIALS, REGISTRY_LOGIN_SERVER, REGISTRY_USERNAME, REGISTRY_PASSWORD and RESOURCE_GROUP\n2. Only ports 80 and 443 can be used with ACI\n\nLive URL: [find in Azure portal]\n\n![Deploy to Azure ACI Workflow](https://github.com/dimonets/github-actions-example-nodejs/actions/workflows/deploy-azure-aci.yml/badge.svg)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdimonets%2Fgithub-actions-example-nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdimonets%2Fgithub-actions-example-nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdimonets%2Fgithub-actions-example-nodejs/lists"}