Add ec2-api image
Initial image for EC2-API, a standalone service for OpenStack that supports AWS EC2 and VPC API. Change-Id: Ia8d611cc3988499baf15e731fd053f38ad9b5079
This commit is contained in:
49
docker/ec2-api/Dockerfile.j2
Normal file
49
docker/ec2-api/Dockerfile.j2
Normal file
@@ -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
|
15
docker/ec2-api/extend_start.sh
Normal file
15
docker/ec2-api/extend_start.sh
Normal file
@@ -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
|
@@ -97,6 +97,7 @@ _PROFILE_OPTS = [
|
|||||||
'congress',
|
'congress',
|
||||||
'designate',
|
'designate',
|
||||||
'dragonflow',
|
'dragonflow',
|
||||||
|
'ec2-api',
|
||||||
'freezer',
|
'freezer',
|
||||||
'gnocchi',
|
'gnocchi',
|
||||||
'influxdb',
|
'influxdb',
|
||||||
@@ -309,6 +310,10 @@ SOURCES = {
|
|||||||
'type': 'url',
|
'type': 'url',
|
||||||
'location': ('$tarballs_base/dragonflow/'
|
'location': ('$tarballs_base/dragonflow/'
|
||||||
'dragonflow-master.tar.gz')},
|
'dragonflow-master.tar.gz')},
|
||||||
|
'ec2-api': {
|
||||||
|
'type': 'url',
|
||||||
|
'location': ('$tarballs_base/ec2-api/'
|
||||||
|
'ec2-api-master.tar.gz')},
|
||||||
'freezer-api': {
|
'freezer-api': {
|
||||||
'type': 'url',
|
'type': 'url',
|
||||||
'location': ('$tarballs_base/freezer-api/'
|
'location': ('$tarballs_base/freezer-api/'
|
||||||
@@ -853,6 +858,10 @@ USERS = {
|
|||||||
'qdrouterd-user': {
|
'qdrouterd-user': {
|
||||||
'uid': 42465,
|
'uid': 42465,
|
||||||
'gid': 42465,
|
'gid': 42465,
|
||||||
|
},
|
||||||
|
'ec2api-user': {
|
||||||
|
'uid': 42466,
|
||||||
|
'gid': 42466,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
3
releasenotes/notes/add-ec2-api-e7d3e60173e8a3d8.yaml
Normal file
3
releasenotes/notes/add-ec2-api-e7d3e60173e8a3d8.yaml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
---
|
||||||
|
features:
|
||||||
|
- add image for EC2-API service
|
@@ -117,6 +117,7 @@ class BuildTestUbuntuBinary(BuildTest, base.BaseTestCase):
|
|||||||
"cloudkitty-base",
|
"cloudkitty-base",
|
||||||
"congress-base",
|
"congress-base",
|
||||||
"dragonflow-base",
|
"dragonflow-base",
|
||||||
|
"ec2-api",
|
||||||
"freezer-base",
|
"freezer-base",
|
||||||
"heat-all",
|
"heat-all",
|
||||||
"karbor-base",
|
"karbor-base",
|
||||||
@@ -160,6 +161,7 @@ class BuildTestDebianBinary(BuildTest, base.BaseTestCase):
|
|||||||
"cloudkitty-base",
|
"cloudkitty-base",
|
||||||
"congress-base",
|
"congress-base",
|
||||||
"dragonflow-base",
|
"dragonflow-base",
|
||||||
|
"ec2-api",
|
||||||
"freezer-base",
|
"freezer-base",
|
||||||
"heat-all",
|
"heat-all",
|
||||||
"karbor-base",
|
"karbor-base",
|
||||||
|
Reference in New Issue
Block a user