diff options
| author | Jenkins <jenkins@review.openstack.org> | 2017-05-30 08:39:44 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2017-05-30 08:39:44 +0000 |
| commit | ad864e20a49bcdff1d63550678472b418b8f537d (patch) | |
| tree | e88c693d129db12db6103e682e2656a80bb0b118 | |
| parent | 67a733a0eed362e7f14a2ca5334ac0712b582c53 (diff) | |
| parent | cede69b96d9aff11ab5a301b299071616703af19 (diff) | |
| download | kolla-ad864e20a49bcdff1d63550678472b418b8f537d.tar.gz kolla-ad864e20a49bcdff1d63550678472b418b8f537d.zip | |
Merge "Add ec2-api image"
| -rw-r--r-- | docker/ec2-api/Dockerfile.j2 | 49 | ||||
| -rw-r--r-- | docker/ec2-api/extend_start.sh | 15 | ||||
| -rwxr-xr-x | kolla/common/config.py | 9 | ||||
| -rw-r--r-- | releasenotes/notes/add-ec2-api-e7d3e60173e8a3d8.yaml | 3 | ||||
| -rw-r--r-- | tests/test_build.py | 2 |
5 files changed, 78 insertions, 0 deletions
diff --git a/docker/ec2-api/Dockerfile.j2 b/docker/ec2-api/Dockerfile.j2 new file mode 100644 index 000000000..c461af526 --- /dev/null +++ b/docker/ec2-api/Dockerfile.j2 @@ -0,0 +1,49 @@ +FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }} +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" + +{% block ec2_api_header %}{% endblock %} + +{% import "macros.j2" as macros with context %} + +{{ macros.configure_user(name='ec2api') }} + +{% if install_type == 'binary' %} + + {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %} + {% set ec2_api_packages = [ + 'openstack-ec2-api' + ] %} + + {% elif base_distro in ['debian', 'ubuntu'] %} + +RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \ + && /bin/false + + {% endif %} + +{{ macros.install_packages(ec2_api_packages | customizable("packages")) }} + +{% elif install_type == 'source' %} + +ADD ec2-api-archive /ec2-api-source + +{% set ec2_api_pip_packages = [ + '/ec2-api' +] %} + +RUN ln -s ec2-api-source/* ec2-api \ + && {{ macros.install_pip(ec2_api_pip_packages | customizable("pip_packages")) }} \ + && mkdir -p /etc/ec2api \ + && cp -r /ec2-api/etc/ec2api/* /etc/ec2api \ + && chown -R ec2api: /etc/ec2api + +{% endif %} + +COPY extend_start.sh /usr/local/bin/kolla_extend_start + +RUN chmod 755 /usr/local/bin/kolla_extend_start + +{% block ec2_api_footer %}{% endblock %} +{% block footer %}{% endblock %} + +USER ec2api diff --git a/docker/ec2-api/extend_start.sh b/docker/ec2-api/extend_start.sh new file mode 100644 index 000000000..2ecd20b20 --- /dev/null +++ b/docker/ec2-api/extend_start.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [[ ! -d "/var/log/kolla/ec2-api" ]]; then + mkdir -p /var/log/kolla/ec2-api +fi +if [[ $(stat -c %a /var/log/kolla/ec2-api) != "755" ]]; then + chmod 755 /var/log/kolla/ec2-api +fi + +# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases +# of the KOLLA_BOOTSTRAP variable being set, including empty. +if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then + ec2-api-manage db_sync + exit 0 +fi diff --git a/kolla/common/config.py b/kolla/common/config.py index 90fbc2777..5c8ba3f33 100755 --- a/kolla/common/config.py +++ b/kolla/common/config.py @@ -97,6 +97,7 @@ _PROFILE_OPTS = [ 'congress', 'designate', 'dragonflow', + 'ec2-api', 'freezer', 'gnocchi', 'influxdb', @@ -309,6 +310,10 @@ SOURCES = { 'type': 'url', 'location': ('$tarballs_base/dragonflow/' 'dragonflow-master.tar.gz')}, + 'ec2-api': { + 'type': 'url', + 'location': ('$tarballs_base/ec2-api/' + 'ec2-api-master.tar.gz')}, 'freezer-api': { 'type': 'url', 'location': ('$tarballs_base/freezer-api/' @@ -853,6 +858,10 @@ USERS = { 'qdrouterd-user': { 'uid': 42465, 'gid': 42465, + }, + 'ec2api-user': { + 'uid': 42466, + 'gid': 42466, } } diff --git a/releasenotes/notes/add-ec2-api-e7d3e60173e8a3d8.yaml b/releasenotes/notes/add-ec2-api-e7d3e60173e8a3d8.yaml new file mode 100644 index 000000000..c5438be6e --- /dev/null +++ b/releasenotes/notes/add-ec2-api-e7d3e60173e8a3d8.yaml @@ -0,0 +1,3 @@ +--- +features: + - add image for EC2-API service diff --git a/tests/test_build.py b/tests/test_build.py index 8e7c80d27..42f8aa95a 100644 --- a/tests/test_build.py +++ b/tests/test_build.py @@ -117,6 +117,7 @@ class BuildTestUbuntuBinary(BuildTest, base.BaseTestCase): "cloudkitty-base", "congress-base", "dragonflow-base", + "ec2-api", "freezer-base", "heat-all", "karbor-base", @@ -160,6 +161,7 @@ class BuildTestDebianBinary(BuildTest, base.BaseTestCase): "cloudkitty-base", "congress-base", "dragonflow-base", + "ec2-api", "freezer-base", "heat-all", "karbor-base", |
