commit | c18d4cc421da2d2dc5c0ecaeb7e86089ad573592 | [log] [tgz] |
---|---|---|
author | Benjamin Copeland <ben.copeland@linaro.org> | Wed Apr 28 10:31:18 2021 +0100 |
committer | Benjamin Copeland <ben.copeland@linaro.org> | Thu Apr 29 16:20:54 2021 +0100 |
tree | 5a53aa70d74ad223ee7a08a8a45467b6cdc45c77 |
Tuxput: initial upload This brings in publish.trustedfirmware.org to allow for S3 publishing. Signed-off-by: Benjamin Copeland <ben.copeland@linaro.org> Change-Id: Ida3dd3186a8140cd01801ce7ac0223234703343f
This repository uses Zappa, TuxPut, and pipenv to deploy an upload server to S3!
This will create Pipfile and Pipfile.lock.
$ pipenv install zappa $ pipenv install -e git+ssh://git@gitlab.com/kspoon-linaro/tuxput.git@master#egg=tuxput
This will update Pipfile.lock based on the most current version of the things listed in Pipfile.
$ pipenv update
Once it's already been deployed, changes (such as tuxput updates) are deployed using 'zappa update'.
$ pipenv run zappa update dev $ # test/validate dev $ pipenv run zappa update prod
$ S3_BUCKET=testing-tuxpub.ctt.linaro.org S3_REGION=us-east-1 S3_ROOT=projects FLASK_APP=tuxput pipenv run flask run
For the time being, there is only one environment: production. The deploy and update verbs require an environment argument.
$ pipenv run zappa deploy prod
To associate a zappa deploy with a domain name, as defined in zappa_settings.yml, run zappa certify. We use ACM certificates to terminate https, which were manually created and are automatically renewed.
$ pipenv run zappa certify prod
You will also need to setup the AWS API Gateway and Route 53 entry for your site. The API Gateway should be tied to the project_name value in zappa_settings.yml.