0.0.25 • Published 12 months ago
da-playa v0.0.25
Da-Playa - Dynamo Deploy Locker and Running Jobs coordinator
Da-Playa stores the locks and running jobs in DynamoDB
DB Schema:
DaPlayaLocks
id | user | env | createdAt | updatedAt | active | uberlock | meta
<UUID> | <COMMITER_EMAIL> | PRODUCTION | 123123123 | 123123123 | true | false | CI URL
<UUID> | <COMMITER_EMAIL> | STAGING | 123123123 | 123123123 | false | true | Slack
<UUID> | <COMMITER_EMAIL> | WHATEVZ | 123123123 | 123123123 | false | true | CLI
DaPlayaRunningJobs
id | user | jobname | version | started | ended | skipped
<UUID> | <COMMITER_EMAIL> | deploy-prod | GIT_SHA1 | 123123123 | 123123123 | true
<UUID> | <COMMITER_EMAIL> | deploy-stage | GIT_SHA1 | 123123123 | | false
<UUID> | <COMMITER_EMAIL> | WHATEVZ | GIT_SHA1 | 123123123 | 123123123 | false
CLI
Loads AWS credentials from environment variables (either AWS_PROFILE
or the explicit AWS_SECRET_ACCESS_KEY
and AWS_ACCESS_KEY_ID
).
init # creates table
locks list --env <ENV> # list locks
locks release --env <ENV> --user <USER> [--uberlock] # release locked env for user at env
locks lock --env <ENV> --user <USER> [--meta <META>] [--uberlock] # locks an env for the user
jobs start --jobname <JOBNAME> --user <USER> --gitversion <VERSION> # creates a running job
jobs get --jobname <JOBNAME> --gitversion <VERSION> # get the details of a specific job
jobs end --jobname <JOBNAME> --gitversion <VERSION> [--skipped] # ends a running job, optionally set it as skipped
jobs active --jobname <JOBNAME> [--ttl <TIMEFRAME>] # list all running jobs within time frame
jobs skipped --jobname <JOBNAME> [--ttl <TIMEFRAME>] # list all skipped jobs within time frame
Note:
lock
keeps writing attempts for locking in case it's waiting (every 5 seconds).
E.g. : Still locked at env <ENV> by <USER>
Additional Env Vars
DAPLAYA_AWS_REGION # Optionally explicitly set region to save DynamoDB table
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....................................................
:::::::::::::::::::::::::::::::::::::::::::::::::.:::::::................................::.---:.....:.........
:::::::::::::::::::::::::::::::::::::::::::::::::------:::::.:::.......................:::--:..........::::::..
:::::::::-:::::--:::::::::::::::::::---:--:::::::::::::::::::::::.............::::::::..............:::::::::::
::::::-::--:-::---:::::::::::::::::::::--:-::::::::::::::::::::::..........:::-----:--:::...........=+-:::-+*+-
::::----::-----:--:::::::::::::::::::::::::::::::::::----=--::::::..:....::--------:::::-::::::.....:##-:+*#+-.
:::::-:::::----:::--:::::::::::::::::::::::::::::::::::--:::::::::.:....:----:-------====*=-:::.::..:+#++##=:::
:::::--:::::----:-----::::::::::::::::::::::::::::::::::::::::::::::...:------------------::.::::::::+#*#*+==-:
::::::::::::-----------::::::::::::::::::::::::::::::::::::::::::::::.::---------------:---:.::::-=**##%%%%##*-
--:::::::--:::----------:::-::::======-::::::::::::::::::::::::::::::::--------------------:::::+#*=+*#%%#+*++-
----:::::::::::--:--------:::::-#%#+=-:::::::::::::::::::::::::::::::::--------------------:::-**=--*####%*=:::
------::::-::::---::::----::::-*=*=++=====-::::::::::::::::::::::::::::::-------=*===------:=+=-::-**+#=+#*+:::
-------:::---------:-------::-*+=%%%#*+=-:::::::::::::::::::::::::::::::::-------+###+---=*#*-::::=+--*:-#+-:::
--------::-------------------*#-+#*=-::::::::::::::::::::::::::::::::::::::::-----+%##*--*%%=::::-+-:=+::+=-:::
---------------------:------+%*-+=------:--:::::::::::::::::::::::::::::::::::-+**##%%%#*%#+---::::::+=::-:::::
---------------------------+%%+-++--------:::::::::::::::::::::::::::::::::::+******%%%#%%%%%%#*=-:::*=::::::::
=-------------------------=%@@=-+*------------::::::::::::::::::::::::::::::--:-:=+*#%%%%%%#**+##*=::#-::::::::
=------------------------=%@@@--+*------------------::::::::::::::::::::::::::::-*#***#%#@%%*-::---::#-::::::::
====---------------------%@@@@--*%------------------::::::::::::::::::::::::::::+#*-=#%##%#%%+-:::::-%=::::::::
========----------------#@@%%@=*#%+-----------=------------::::::::::::::::::::-+--:+##*=%+*#%=:::::-%=::::::::
=======-===------------*%@@@%%%+*@#-----------+------------:----:-::::::::::::::-:::-**+-**-+#+::::::%+-:::::::
==============--------+@@%#+*@*-*@%=----------*----==-------------------::::::::::::-**-:=%=:==::::::%*-:::::::
=================---=+@@#=-#@@*-*@@#----------#---------------------------:::::::-:---=-:-#*:--------##-::::--:
=====================%%+-=%@@#*-#@@@+---------%+-----------------------------::-----------+%+--------#%-------:
===================+%#+=+@@@@#++#@@@%=--------%#----=-==---===----------------------------=%%=----===#%==------
++++++++++++++*++++%#**#@@@@@%*#%@@@@%++++++++%@*++++++++++================================+@%=======#@*======-
******************##+*#@@@@@@@#%@@@@@@*++==+++%@#++==+============--------------------------*@#=-----*@#======:
=+++++++**+++****##++#@%#**#%@@#%@@@@@@+======@@@*===============----------------------------#@#-----+@%------:
=+++++++++++++++*#+*%%*+++#@@@@+%@@@@@@%+=====@@@@+==============-----------------------------#@#==--+@@===---:
+++++++++++++++**+*%*++*%@@@@@%=%@@@@@@@%+====@@@@@*=============-----------------------------=#@%+===@@*=====-
+++++++++++++++*+*#++#%@@@@@@@@+%@@@@@@@@%*===@@@@@@#==============----------------------------=#@@*-=%@#=====:
++++++++++++++*+##*#@@@@@@@@@@@*%@@@@@@@@@@#++@@@@@@@%*============--------=---------------------*@@#=#@@+==+++
+++++++++++++*+#%%@%%%####%%%@@%#############**++++++*++++++======----=-=-=--------------===-=-===+%@@%@@%***%*
++++++++++++##%%%##*##*******##%#**********+**#++++++======================------+******#%@%%**%##%%@@@@@@@@%%*
+++++++++++++*#%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*============--======--------=+#%%#@@@@@@@@@@@@@@@@@@@@@@@*
=+++++++++++++++*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#++++=====================--======++=*%%%%@@@@@@@@@@@@@@@@@@#
++++++++++++++++++*#%%%%%%%%%%%%%%%%%%%%%%%%%%%%*+++++=+===============================+*===+@@@@@@@@@@@@@@@@@#
++++++++++++++++++++++++++++++++++++++++++++++++=============================+===============**%@@@@@@@@@@@@@@%
+++++++++++++=+++==+=======++++++++++====+=====================================================**%@@@@@@@@@@@@%
+++++++++++++++++++++==++==++++++++++++===================================================+++*+=+*@@@@@@@@@@@@%
+++++++=++++++++++++++++++++++++++++++++++++++++==++++++==++++=====++=+=+++**+++++++++++++++##+*%%@@@@@@@@@@@@%
=+++++++++++++++++++++++++++++++++=+=+++++++++++=+++++++++++++++++*%@%###%%@@@%%#*++%*++#%++%@#@@@@@@@@@@@@@@@%
===============+=+++++++++++++++++++++++++++++=+++++++++++++++%%%%@%%%%@@@@@@@@@@@@%@%+*%@@@@@@@@@@@@@@@@@@@@@%
Testing locally
npm run -s cli -- <PARAMS> # -s to supress npm verbose output
0.0.25
12 months ago
0.0.24
1 year ago
0.0.22
2 years ago
0.0.23
2 years ago
0.0.20
2 years ago
0.0.21
2 years ago
0.0.19
2 years ago
0.0.15
2 years ago
0.0.16
2 years ago
0.0.17
2 years ago
0.0.18
2 years ago
0.0.13
2 years ago
0.0.14
2 years ago
0.0.12
2 years ago
0.0.10
3 years ago
0.0.11
3 years ago
0.0.9
3 years ago
0.0.8
3 years ago
0.0.5
3 years ago
0.0.7
3 years ago
0.0.4
3 years ago
0.0.2
3 years ago
0.0.1
3 years ago