mirror of
https://github.com/Sea-Haven-Industries/.github.git
synced 2026-09-30 15:13:12 +00:00
Publishes a .NET project, packages the output as a bundle, uploads it, creates an Elastic Beanstalk application version, and updates an existing environment using OIDC credentials. It deploys to an environment; it never creates one. Two deliberate departures from the existing cd-* reusables: - A concurrency group keyed on application+environment, with cancel-in-progress false, so two pushes cannot deploy over each other and an in-flight deploy is never aborted midway. The existing cd-* workflows have no concurrency group at all. - No input or secret is interpolated into a run: body; everything goes through env-var indirection. The repo's actionlint runs with shellcheck disabled, so this is a hand-maintained property. The post-deploy check polls rather than using the CLI waiter "elasticbeanstalk wait environment-updated": that waiter is hardcoded to 20 attempts x 20s and the CLI cannot extend it, so a slower rolling deploy would fail the job while the deployment was still healthy. The timeout is an input instead. The check asserts status, health and the running version label -- Elastic Beanstalk reports a rolled-back deploy as a healthy Ready environment running the previous version, so without the version assertion the job would go green over a failed deploy. Replaces the malformed cd-dotnet-eb.yaml.yml stub (doubled extension, empty on:/jobs:). Adds the matching starter template and README entries.
7 lines
424 B
JSON
7 lines
424 B
JSON
{
|
|
"name": "Sea Haven — Deploy (.NET Elastic Beanstalk)",
|
|
"description": "Publishes a .NET project and deploys it to an existing AWS Elastic Beanstalk environment via OIDC, using the org reusable cd-dotnet-eb workflow. Set project, eb-application, eb-environment and procfile-command before enabling.",
|
|
"iconName": "octicon-rocket",
|
|
"categories": ["Deployment", "C#"],
|
|
"filePatterns": ["\\.csproj$", "\\.sln$"]
|
|
}
|