Added init script to inject credentials for DNS and Providers
Change-Id: Id9b8454ac65cd566fa16b9863005b254af5a2eeb
This commit is contained in:
parent
b93576f881
commit
92b8e69942
|
@ -44,6 +44,7 @@ write_file
|
|||
.settings/*
|
||||
|
||||
/Dockerfile
|
||||
/docker/fig/fig_local.yml
|
||||
|
||||
# patch files
|
||||
*.patch
|
||||
|
|
|
@ -32,9 +32,13 @@ RUN sudo pip install -r /home/poppy/requirements/requirements.txt
|
|||
RUN sudo pip install -e /home/poppy/.
|
||||
|
||||
# Set up the configuration files
|
||||
ADD ./poppy.conf /etc/poppy.conf
|
||||
ADD ./logging.conf /etc/logging.conf
|
||||
ADD ./uwsgi.ini /root/uwsgi.ini
|
||||
ADD ./docker/api/poppy.conf /etc/poppy.conf
|
||||
ADD ./docker/api/logging.conf /etc/logging.conf
|
||||
ADD ./docker/api/uwsgi.ini /root/uwsgi.ini
|
||||
|
||||
# Deploy startup script
|
||||
ADD ./docker/api/init.sh /usr/local/bin/poppy_startup
|
||||
RUN chmod 755 /usr/local/bin/poppy_startup
|
||||
|
||||
# create uwsgi log directory
|
||||
RUN mkdir -p /var/log/poppy
|
||||
|
@ -44,8 +48,6 @@ RUN chmod -R +w /var/log/poppy
|
|||
RUN mkdir -p /var/run/poppy
|
||||
RUN chmod -R +w /var/run/poppy
|
||||
|
||||
#RUN /usr/local/bin/uwsgi --ini /root/uwsgi.ini
|
||||
|
||||
# Start Poppy
|
||||
EXPOSE 8081
|
||||
CMD ["/usr/local/bin/uwsgi", "--ini", "/root/uwsgi.ini"]
|
||||
CMD poppy-startup
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Setup Configs
|
||||
echo "Setting Configs"
|
||||
CONFIG=/etc/poppy.conf
|
||||
|
||||
sed -i -e "s/DNS_USERNAME/$DNS_USERNAME/" $CONFIG
|
||||
sed -i -e "s/DNS_APIKEY/$DNS_APIKEY/" $CONFIG
|
||||
sed -i -e "s/DNS_URL/$DNS_URL/" $CONFIG
|
||||
sed -i -e "s/DNS_EMAIL/$DNS_EMAIL/" $CONFIG
|
||||
|
||||
sed -i -e "s/FASTLY_APIKEY/$FASTLY_APIKEY/" $CONFIG
|
||||
|
||||
sed -i -e "s/AKAM_POLICY_API_CLIENT_TOKEN/$AKAM_POLICY_API_CLIENT_TOKEN/" $CONFIG
|
||||
sed -i -e "s/AKAM_POLICY_API_CLIENT_SECRET/$AKAM_POLICY_API_CLIENT_SECRET/" $CONFIG
|
||||
sed -i -e "s/AKAM_POLICY_API_ACCESS_TOKEN/$AKAM_POLICY_API_ACCESS_TOKEN/" $CONFIG
|
||||
sed -i -e "s/AKAM_POLICY_API_BASE_URL/$AKAM_POLICY_API_BASE_URL/" $CONFIG
|
||||
sed -i -e "s/AKAM_CCU_API_CLIENT_TOKEN/$AKAM_CCU_API_CLIENT_TOKEN/" $CONFIG
|
||||
sed -i -e "s/AKAM_CCU_API_CLIENT_SECRET/$AKAM_CCU_API_CLIENT_SECRET/" $CONFIG
|
||||
sed -i -e "s/AKAM_CCU_API_ACCESS_TOKEN/$AKAM_CCU_API_ACCESS_TOKEN/" $CONFIG
|
||||
sed -i -e "s/AKAM_CCU_API_BASE_URL/$AKAM_CCU_API_BASE_URL/" $CONFIG
|
||||
sed -i -e "s/AKAM_ACCESS_URL_LINK/$AKAM_ACCESS_URL_LINK/" $CONFIG
|
||||
|
||||
|
||||
/usr/local/bin/uwsgi --ini /root/uwsgi.ini
|
|
@ -49,5 +49,25 @@ port = 8081
|
|||
cluster = "cassandra"
|
||||
keyspace = poppy
|
||||
|
||||
[drivers:dns:rackspace]
|
||||
username = DNS_USERNAME
|
||||
api_key = DNS_APIKEY
|
||||
use_shards = True
|
||||
num_shards = 499
|
||||
shard_prefix = "cdn"
|
||||
url = DNS_URL
|
||||
email = DNS_EMAIL
|
||||
|
||||
[drivers:provider:fastly]
|
||||
apikey = "MYAPIKEY"
|
||||
apikey = FASTLY_APIKEY
|
||||
|
||||
[drivers:provider:akamai]
|
||||
policy_api_client_token = AKAM_POLICY_API_CLIENT_TOKEN
|
||||
policy_api_client_secret = AKAM_POLICY_API_CLIENT_SECRET
|
||||
policy_api_access_token = AKAM_POLICY_API_ACCESS_TOKEN
|
||||
policy_api_base_url = AKAM_POLICY_API_BASE_URL
|
||||
ccu_api_client_token = AKAM_CCU_API_CLIENT_TOKEN
|
||||
ccu_api_client_secret = AKAM_CCU_API_CLIENT_SECRET
|
||||
ccu_api_access_token = AKAM_CCU_API_ACCESS_TOKEN
|
||||
ccu_api_base_url = AKAM_CCU_API_BASE_URL
|
||||
akamai_access_url_link = AKAM_ACCESS_URL_LINK
|
||||
|
|
|
@ -37,6 +37,10 @@ ADD ./docker/api_dev/poppy.conf /etc/poppy.conf
|
|||
ADD ./docker/api_dev/logging.conf /etc/logging.conf
|
||||
ADD ./docker/api_dev/uwsgi.ini /root/uwsgi.ini
|
||||
|
||||
# Deploy startup script
|
||||
ADD ./docker/api_dev/init.sh /usr/local/bin/poppy_startup
|
||||
RUN chmod 755 /usr/local/bin/poppy_startup
|
||||
|
||||
# create uwsgi log directory
|
||||
RUN mkdir -p /var/log/poppy
|
||||
RUN chmod -R +w /var/log/poppy
|
||||
|
@ -45,8 +49,6 @@ RUN chmod -R +w /var/log/poppy
|
|||
RUN mkdir -p /var/run/poppy
|
||||
RUN chmod -R +w /var/run/poppy
|
||||
|
||||
#RUN /usr/local/bin/uwsgi --ini /root/uwsgi.ini
|
||||
|
||||
# Start Poppy
|
||||
EXPOSE 8081
|
||||
CMD ["/usr/local/bin/uwsgi", "--ini", "/root/uwsgi.ini"]
|
||||
CMD poppy_startup
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Setup Configs
|
||||
echo "Setting Configs"
|
||||
CONFIG=/etc/poppy.conf
|
||||
|
||||
sed -i -e "s/DNS_USERNAME/$DNS_USERNAME/" $CONFIG
|
||||
sed -i -e "s/DNS_APIKEY/$DNS_APIKEY/" $CONFIG
|
||||
sed -i -e "s/DNS_URL/$DNS_URL/" $CONFIG
|
||||
sed -i -e "s/DNS_EMAIL/$DNS_EMAIL/" $CONFIG
|
||||
|
||||
sed -i -e "s/FASTLY_APIKEY/$FASTLY_APIKEY/" $CONFIG
|
||||
|
||||
sed -i -e "s/AKAM_POLICY_API_CLIENT_TOKEN/$AKAM_POLICY_API_CLIENT_TOKEN/" $CONFIG
|
||||
sed -i -e "s/AKAM_POLICY_API_CLIENT_SECRET/$AKAM_POLICY_API_CLIENT_SECRET/" $CONFIG
|
||||
sed -i -e "s/AKAM_POLICY_API_ACCESS_TOKEN/$AKAM_POLICY_API_ACCESS_TOKEN/" $CONFIG
|
||||
sed -i -e "s/AKAM_POLICY_API_BASE_URL/$AKAM_POLICY_API_BASE_URL/" $CONFIG
|
||||
sed -i -e "s/AKAM_CCU_API_CLIENT_TOKEN/$AKAM_CCU_API_CLIENT_TOKEN/" $CONFIG
|
||||
sed -i -e "s/AKAM_CCU_API_CLIENT_SECRET/$AKAM_CCU_API_CLIENT_SECRET/" $CONFIG
|
||||
sed -i -e "s/AKAM_CCU_API_ACCESS_TOKEN/$AKAM_CCU_API_ACCESS_TOKEN/" $CONFIG
|
||||
sed -i -e "s/AKAM_CCU_API_BASE_URL/$AKAM_CCU_API_BASE_URL/" $CONFIG
|
||||
sed -i -e "s/AKAM_ACCESS_URL_LINK/$AKAM_ACCESS_URL_LINK/" $CONFIG
|
||||
|
||||
|
||||
/usr/local/bin/uwsgi --ini /root/uwsgi.ini
|
|
@ -49,5 +49,25 @@ port = 8081
|
|||
cluster = "cassandra"
|
||||
keyspace = poppy
|
||||
|
||||
[drivers:dns:rackspace]
|
||||
username = DNS_USERNAME
|
||||
api_key = DNS_APIKEY
|
||||
use_shards = True
|
||||
num_shards = 499
|
||||
shard_prefix = "cdn"
|
||||
url = DNS_URL
|
||||
email = DNS_EMAIL
|
||||
|
||||
[drivers:provider:fastly]
|
||||
apikey = "MYAPIKEY"
|
||||
apikey = FASTLY_APIKEY
|
||||
|
||||
[drivers:provider:akamai]
|
||||
policy_api_client_token = AKAM_POLICY_API_CLIENT_TOKEN
|
||||
policy_api_client_secret = AKAM_POLICY_API_CLIENT_SECRET
|
||||
policy_api_access_token = AKAM_POLICY_API_ACCESS_TOKEN
|
||||
policy_api_base_url = AKAM_POLICY_API_BASE_URL
|
||||
ccu_api_client_token = AKAM_CCU_API_CLIENT_TOKEN
|
||||
ccu_api_client_secret = AKAM_CCU_API_CLIENT_SECRET
|
||||
ccu_api_access_token = AKAM_CCU_API_ACCESS_TOKEN
|
||||
ccu_api_base_url = AKAM_CCU_API_BASE_URL
|
||||
akamai_access_url_link = AKAM_ACCESS_URL_LINK
|
|
@ -2,17 +2,24 @@ Install Fig::
|
|||
|
||||
$ sudo pip install -U fig
|
||||
|
||||
Before you begin
|
||||
----------------
|
||||
|
||||
Install Poppy from Upstream
|
||||
---------------------------
|
||||
Update the appropriate fig file being used with the appropriate credentials.
|
||||
|
||||
Warning - never git commit your secret credentials to upstream! We recommend you create a new file named fig_local.yml (this will be ignored by git) and add your credentials in there. Reference that file in the -f parameter in the instructions below.
|
||||
|
||||
|
||||
Install Poppy from Upstream (fig.yml)
|
||||
-------------------------------------
|
||||
|
||||
Build and Run::
|
||||
|
||||
$ fig up -d
|
||||
$ fig -f docker/fig/fig_local.yml up -d
|
||||
|
||||
Build && Rebuild::
|
||||
|
||||
$ fig build
|
||||
$ fig -f fig_local.yml build
|
||||
|
||||
To stop all your fig containers::
|
||||
|
||||
|
@ -28,12 +35,12 @@ To get the most-updated code of poppy::
|
|||
$ fig run poppy uwsgi --reload /var/run/poppy/poppy.pid
|
||||
|
||||
|
||||
Mounting a local Poppy Volume
|
||||
-----------------------------
|
||||
Mounting a local Poppy Volume (copy from fig_dev.yml)
|
||||
-------------------------------------------
|
||||
|
||||
1. Build and Run::
|
||||
|
||||
$ dev up
|
||||
$ ./docker/fig/dev -f fig_local.yml up -d
|
||||
|
||||
Note that `dev` is a wrapper around the [`fig` CLI](http://www.fig.sh/cli.html) so
|
||||
any sub-commands that work with the fig CLI will work with `dev` as well.
|
||||
|
@ -43,20 +50,12 @@ Also note that the `fig_dev.yml` file in this folder cannot be used directly wit
|
|||
invoking `fig`.
|
||||
|
||||
|
||||
Testing
|
||||
--------
|
||||
|
||||
Access the running poppy api instance home document::
|
||||
|
||||
$ curl <docker_ip>/v1.0/
|
||||
|
||||
|
||||
Building and Running the Poppy API Server w/Mimic
|
||||
-------------------------------------------------
|
||||
Building and Running the Poppy API Server w/Mimic (fig_mimic.yml)
|
||||
-----------------------------------------------------------------
|
||||
|
||||
From this folder, run:
|
||||
|
||||
$ ./dev_mimic up -d
|
||||
$ ./docker/fig/dev_mimic -f docker/fig/fig_local.yml up -d
|
||||
|
||||
This will bring up a poppy server with your local poppy repository mounted as a volume
|
||||
and will run it with any local changes. Cassandra and Mimic will also be started and
|
||||
|
@ -64,11 +63,11 @@ wired together.
|
|||
|
||||
If you are running docker locally, you can then access the API at:
|
||||
|
||||
$ curl http://localhost/v1.0/
|
||||
$ curl http://<docker_ip>/v1.0/
|
||||
|
||||
If local changes are made, simply restart the services to run them:
|
||||
|
||||
$ ./dev_mimic restart
|
||||
$ ./docker/fig/dev_mimic restart
|
||||
|
||||
You can run the API tests against the poppy container according to the
|
||||
[API testing](https://github.com/stackforge/poppy/blob/master/tests/api/README.rst)
|
||||
|
@ -78,3 +77,11 @@ Note that `dev_mimic` is a wrapper around [`fig`](http://www.fig.sh/cli.html) so
|
|||
any sub-commands that work with the fig CLI will work with `dev_mimic` as well.
|
||||
|
||||
Note that `dev_mimic` does not run a repose container.
|
||||
|
||||
|
||||
Testing
|
||||
--------
|
||||
|
||||
Access the running poppy api instance home document::
|
||||
|
||||
$ curl <docker_ip>/v1.0/
|
||||
|
|
|
@ -14,8 +14,27 @@ poppy:
|
|||
build: ../api/.
|
||||
ports:
|
||||
- "81:8081"
|
||||
environment:
|
||||
DNS_USERNAME: CloudUsername
|
||||
DNS_APIKEY: CloudApiKey
|
||||
DNS_URL: DNSUrlToUse
|
||||
DNS_EMAIL: YourEmailAddress
|
||||
|
||||
FASTLY_APIKEY: FastlyApiKey
|
||||
|
||||
AKAM_POLICY_API_CLIENT_TOKEN: value
|
||||
AKAM_POLICY_API_CLIENT_SECRET: value
|
||||
AKAM_POLICY_API_ACCESS_TOKEN: value
|
||||
AKAM_POLICY_API_BASE_URL: value
|
||||
AKAM_CCU_API_CLIENT_TOKEN: value
|
||||
AKAM_CCU_API_CLIENT_SECRET: value
|
||||
AKAM_CCU_API_ACCESS_TOKEN: value
|
||||
AKAM_CCU_API_BASE_URL: value
|
||||
AKAM_ACCESS_URL_LINK: value
|
||||
links:
|
||||
- cassandra
|
||||
|
||||
|
||||
cassandra:
|
||||
build: ../cassandra/.
|
||||
ports:
|
||||
|
|
|
@ -14,6 +14,23 @@ poppydev:
|
|||
build: ../../.
|
||||
ports:
|
||||
- "81:8081"
|
||||
environment:
|
||||
DNS_USERNAME: CloudUsername
|
||||
DNS_APIKEY: CloudApiKey
|
||||
DNS_URL: DNSUrlToUse
|
||||
DNS_EMAIL: YourEmailAddress
|
||||
|
||||
FASTLY_APIKEY: FastlyApiKey
|
||||
|
||||
AKAM_POLICY_API_CLIENT_TOKEN: value
|
||||
AKAM_POLICY_API_CLIENT_SECRET: value
|
||||
AKAM_POLICY_API_ACCESS_TOKEN: value
|
||||
AKAM_POLICY_API_BASE_URL: value
|
||||
AKAM_CCU_API_CLIENT_TOKEN: value
|
||||
AKAM_CCU_API_CLIENT_SECRET: value
|
||||
AKAM_CCU_API_ACCESS_TOKEN: value
|
||||
AKAM_CCU_API_BASE_URL: value
|
||||
AKAM_ACCESS_URL_LINK: value
|
||||
links:
|
||||
- cassandra
|
||||
volumes:
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
-r docs.txt
|
||||
-r transport/pecan.txt
|
||||
-r storage/cassandra.txt
|
||||
-r dns/rackspace.txt
|
||||
-r provider/akamai.txt
|
||||
-r provider/cloudfront.txt
|
||||
-r provider/fastly.txt
|
||||
|
|
Loading…
Reference in New Issue