AWS CodePipeline Plugin #1595
Quali-Community
started this conversation in
Integrations
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
AWS CodePipeline Plugin
AWSCodePipelinePlugin
AWS CodePipeline custom actions:
See README.md on GitHub for detailed instructions.
Repository
README.md
Name
AWS-CodePipeline
Owner
QualiSystemsLab
Type
Plugin
Category
DevOps
Min. Compatible CloudShell Version
8.1
AWS-CodePipeline
Custom pipeline actions to start and stop sandboxes and
run sandbox and component commands
Quali actions are installed within an individual AWS account
and are available in CodePipeline under that account.
When a pipeline executes, actions are added to a queue
on an Amazon server.
A "job worker" running on some machine, such as
the CloudShell portal server,
polls the Amazon server for Quali action requests
and executes them using the sandbox API.
Prerequisites
pythonandpipin pathpythonin pathRegistering and unregistering actions
Windows
Linux
Usage
In the AWS CodePipeline editor,
Quali-Start-SandboxandQuali-End-Sandboxare found inthe Deploy category and
Quali-Run-Commandin theTestcategory.
Add a
Quali-Start-Sandboxaction to your pipeline:Enter the name of an existing blueprint.
!!! WARNING: Don't forget to "publish" the blueprint. The sandbox API can only access "public" blueprints. !!!
If the blueprint has inputs, you must include them in the
InputsJSONfield in the form of a JSON dictionary.Quali-Start-Sandboxstores the sandbox id and other informationin an output artifact. You must create a unique name in the
Output artifacts #1field when adding theQuali-Start-Sandboxaction:Add a

Quali-Run-Commandaction to your pipeline:ComponentNamecan be:CommandNamemust be the internal name of the command, not the display name.To find out the internal name, look in the Manage>Scripts section of the portal or the
driver source code.
ArgumentsJSONis mandatory if the command takes inputs. Use this format:Add a

Quali-End-Sandboxaction to your pipeline:To determine the sandbox id,
Quali-Run-CommandandQuali-End-Sandboxboth take aninput artifact that must have been created earlier
in the pipeline as an output artifact of
Quali-Start-Sandbox.You must enter this same artifact name
in the
Input artifacts #1field when addingQuali-Run-Commandand
Quali-End-Sandboxactions.Editing an action definition
To edit the action JSON files (to customize action titles, support additional inputs, etc.):
run_worker.cmd/run_worker.shuninstall_aws_actions.cmd/uninstall_aws_actions.shinstall_aws_actions.cmd/install_aws_actions.shTo change the an action title that appears in the GUI (e.g.
Quali-Start-Sandbox), update the name in:run_worker.cmd/run_worker.shuninstall_aws_actions.cmd/uninstall_aws_actions.shThe scripts and worker code expect all actions to have the same version number.
Running the job worker
Windows
Edit
setlines inrun_worker.cmdwith credentials and server info.Run the worker:
Closing the command prompt window will shut down the worker.
Linux
Edit
exportlines inrun_worker.shwith credentials and server info.Run the worker:
About the job worker
The job worker polls the AWS server for queued actions:
It looks only for actions with those names and a single version number.
The scripts expect all actions to have the same version number, so if you edit one action and increment the version number,
it is simplest to increment the others even though they were not changed.
Whenever the job worker receives an action from the AWS server, it
Quali-Start-Sandbox
Quali-Run-Command
Quali-Start-SandboxactionTo support commands that take more than 15 minutes, edit the code
Quali-End-Sandbox
Quali-Start-SandboxactionTo support waiting for Teardown to complete, copy the code
that waits for Setup to complete and change it to check for state "Ended".
* Please allow 30-60 seconds for manual update changes to take effect.
Eric Rosenquist 11/01/2017 00:31 AM
· 2165 ·
Beta Was this translation helpful? Give feedback.
All reactions