aws / aws/aws-extensions-for-dotnet-cli

deploy eb package from folder (instead of requiring a zip file as an input)

Open
#107 3 comments 0 reactions 0 assignees View on GitHub
feature-request module/cli-ext p3 queued
Dominant language
C#
Stars
393
Forks
90
Avg merge
2d 19m
Merged PRs (30d)
3

Description

My team follows a common deployment workflow where binaries are built once, deployed to a testing environment, and at a later time (after passing tests) the _same_ binaries are then deployed to other environments - the only difference between environments are configuration settings stored in files that are included in the deployment package itself, and are updated at deployment time.

![image](https://user-images.githubusercontent.com/177608/75494601-03f9f980-5993-11ea-9571-f5aa31ffba56.png)

Our process is all automated in our CI/CD pipeline, and we use `dotnet eb package` to create the .zip file that (at a later time) is deployed to the different environments via ` dotnet eb deploy-environment --package`.

Given configuration settings differ between environments, we are required to unzip the package created by `dotnet eb package` just before deployment, in order to perform variable replacement in config files, run XSD transforms, etc. to prepare the configuration settings to match the target environment.

At this point, we have a folder with all the files in the desired state to be deployed to the target environment.

Because `dotnet eb deploy-environment --package` requires a .zip file as an input, we end up creating a new .zip file with the contents of the folder and deploy the new .zip file.

It would be useful if `dotnet eb deploy-environment --package` could take a folder as an input, as an alternative to taking a .zip file.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the dotnet eb deploy-environment command and its --package input handling, then compare it with dotnet eb package. Verify how a folder would be passed to Elastic Beanstalk without changing the deployment workflow; done means a prepared folder can be deployed directly and existing .zip inputs still work.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, csharp
Domain
cli, cloud, devops
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.