aboutsummaryrefslogtreecommitdiff
path: root/docker/base
diff options
context:
space:
mode:
authorCarlos Cesario <carloscesario@gmail.com>2016-03-26 16:41:46 -0300
committerCarlos Cesario <carloscesario@gmail.com>2016-04-11 17:50:04 -0300
commit08b08c78b571a2b339508412acc59f02b8d9435a (patch)
tree51778539fbec6ace7ad39fd04f89ca24af45490f /docker/base
parentf0c18db2c19043f585f975c0dc597d7b9d5415a7 (diff)
downloadkolla-08b08c78b571a2b339508412acc59f02b8d9435a.tar.gz
kolla-08b08c78b571a2b339508412acc59f02b8d9435a.zip
Identify container through PS1 shell variable
As suggested it was created the variable KOLLA_SERVICE_NAME to identify the container service name through PS1 shell variable. This method it was previously discussed in IRC. https://goo.gl/k7AdEg The other option it was usage hostname param in kolla_docker, but currently docker does not support it due this issue: https://github.com/docker/compose/issues/2460 The final result is like this: $ docker exec -it heka /bin/bash (heka)[heka@kolla-control /]$ $ docker exec -it mariadb /bin/bash (mariadb)[mysql@kolla-control /]$ More details can be accessed through this link http://paste.openstack.org/show/493689/ Closes-Bug: #1557454 Change-Id: I6aab8d640a8ebb17baa9d6d4f1edd6e331674713
Diffstat (limited to 'docker/base')
-rw-r--r--docker/base/Dockerfile.j216
-rw-r--r--docker/base/kolla_bashrc6
2 files changed, 22 insertions, 0 deletions
diff --git a/docker/base/Dockerfile.j2 b/docker/base/Dockerfile.j2
index afcc5b30b..34bfac9f9 100644
--- a/docker/base/Dockerfile.j2
+++ b/docker/base/Dockerfile.j2
@@ -10,6 +10,14 @@ ENV KOLLA_BASE_DISTRO {{ base_distro }}
ENV KOLLA_INSTALL_TYPE {{ install_type }}
ENV KOLLA_INSTALL_METATYPE {{ install_metatype }}
+#### Customize PS1 to be used with bash shell
+COPY kolla_bashrc /tmp/
+RUN cat /tmp/kolla_bashrc >> /etc/skel/.bashrc
+RUN cat /tmp/kolla_bashrc >> /root/.bashrc
+
+# PS1 var when used /bin/sh shell
+ENV PS1="$(tput bold)($(printenv KOLLA_SERVICE_NAME))$(tput sgr0)[$(id -un)@$(hostname -s) $(pwd)]$ "
+
# For RPM Variants, enable the correct repositories - this should all be done
# in the base image so repos are consistent throughout the system. This also
# enables to provide repo overrides at a later date in a simple fashion if we
@@ -17,6 +25,9 @@ ENV KOLLA_INSTALL_METATYPE {{ install_metatype }}
{% if base_distro in ['fedora', 'centos', 'oraclelinux', 'rhel'] %}
+# Customize PS1 bash shell
+RUN cat /tmp/kolla_bashrc >> /etc/bashrc
+
#### BEGIN REPO ENABLEMENT
# Turns on Elasticsearch repos
COPY elasticsearch.yum.repo /etc/yum.repos.d/elasticsearch.repo
@@ -152,6 +163,9 @@ RUN yum -y install \
{# endif for base_distro centos,fedora,oraclelinux,rhel #}
{% elif base_distro in ['ubuntu', 'debian'] %}
+# Customize PS1 bash shell
+RUN cat /tmp/kolla_bashrc >> /etc/bash.bashrc
+
# This will prevent questions from being asked during the install
ENV DEBIAN_FRONTEND noninteractive
@@ -189,4 +203,6 @@ RUN touch /usr/local/bin/kolla_extend_start \
&& chmod 440 /etc/sudoers \
&& groupadd kolla
+RUN rm -f /tmp/kolla_bashrc
+
CMD ["kolla_start"]
diff --git a/docker/base/kolla_bashrc b/docker/base/kolla_bashrc
new file mode 100644
index 000000000..c797e51a9
--- /dev/null
+++ b/docker/base/kolla_bashrc
@@ -0,0 +1,6 @@
+
+#### Custom data added by Kolla
+_KBOLD="\[$(tput bold)\]"
+_KRESET="\[$(tput sgr0)\]"
+
+PS1="${_KBOLD}(${KOLLA_SERVICE_NAME})${_KRESET}[\u@\h \W]\\$ "