Skip to content

Instantly share code, notes, and snippets.

@jwmatthews
Last active September 27, 2016 18:50
Show Gist options
  • Save jwmatthews/2d5df4a90b053556d93d6ce9c5d29ca0 to your computer and use it in GitHub Desktop.
Save jwmatthews/2d5df4a90b053556d93d6ce9c5d29ca0 to your computer and use it in GitHub Desktop.
# Used IP of 10.0.2.15 for OpenShift
# specified ca file with /host prefix based on how "/" on host gets mounted to docker container as "/host"
$ cat answers.conf
[etherpad-app]
image = centos/etherpad
db_port = 3306
db_pass = sample_pass
db_name = sample_name
db_user = sample_user
db_host = mariadb
hostport = 9001
[mariadb-atomicapp]
db_pass = sample_pass
image = centos/mariadb
db_user = sample_user
root_pass = MySQLPass
db_name = sample_name
[general]
namespace = cap
provider = openshift
providertlsverify = False
provider-api = https://10.0.2.15:8443
provider-auth = UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4
provider-cafile = /host/var/lib/openshift/openshift.local.config/master/ca.crt
$ time atomic run projectatomic/etherpad-centos7-atomicapp . -v
docker run -it --rm --privileged -v /home/vagrant/etherpad-centos7-atomicapp:/atomicapp -v /run:/run -v /:/host --net=host --name etherpad-centos7-atomicapp -e USER -e SUDO_USER -e NAME=etherpad-centos7-atomicapp -e IMAGE=projectatomic/etherpad-centos7-atomicapp projectatomic/etherpad-centos7-atomicapp run . -v
This container uses privileged security switches:
INFO: --net=host
Processes in this container can listen to ports (and possibly rawip traffic) on the host's network.
INFO: --privileged
This container runs without separation and should be considered the same as root on your system.
For more information on these switches and their security implications, consult the manpage for 'docker run'.
INFO :: - cli/main.py :: Atomic App: 0.6.3 - Mode: Run
DEBUG :: - cli/main.py :: Final parsed cmdline: run . -v
DEBUG :: - nulecule/main.py :: NuleculeManager init app_path: .
DEBUG :: - nulecule/main.py :: NuleculeManager init image: None
DEBUG :: - utils.py :: Loading answers from file: ./answers.conf
DEBUG :: - nulecule/main.py :: Request to unpack to None to .
INFO :: - nulecule/base.py :: Found existing external application: mariadb-centos7-atomicapp Loading:
DEBUG :: - plugin.py :: Configuration option 'provider-config' not provided
DEBUG :: - plugin.py :: Configuration option 'provider-config' not provided
DEBUG :: - plugin.py :: Configuration option 'provider-config' not provided
DEBUG :: - providers/openshift.py :: Given config: {u'root_pass': u'MySQLPass', u'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', u'providertlsverify': False, u'namespace': u'cap', u'image': u'centos/mariadb', u'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4', u'provider-api': u'https://10.0.2.15:8443', u'db_pass': u'sample_pass', u'db_name': u'sample_name', u'db_user': u'sample_user', u'provider': u'openshift'}
INFO :: - providers/openshift.py :: Using namespace cap
DEBUG :: - providers/openshift.py :: Processing artifact: artifacts/kubernetes/.mariadb-pod.yaml
DEBUG :: - providers/openshift.py :: Processing artifact: artifacts/kubernetes/.mariadb-service.yaml
DEBUG :: - utils.py :: Finding the users home directory
DEBUG :: - utils.py :: Running as user root. Using home directory /root for configuration data
DEBUG :: - providers/openshift.py :: List of parameters passed: {'provider-tlsverify': None, 'provider-api': u'https://10.0.2.15:8443', 'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}
DEBUG :: - providers/openshift.py :: Generating .kube/config from given parameters
DEBUG :: - providers/openshift.py :: List of parameters passed: {'provider-tlsverify': None, 'provider-api': u'https://10.0.2.15:8443', 'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}
DEBUG :: - providers/openshift.py :: Building from required params
DEBUG :: - providers/openshift.py :: Passed configuration for .kube/config {'contexts': [{'name': 'self', 'context': {'cluster': 'self', 'user': 'self'}}], 'clusters': [{'cluster': {'certificate-authority': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'server': u'https://10.0.2.15:8443'}, 'name': 'self'}], 'users': [{'name': 'self', 'user': {'token': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}}], 'current-context': 'self'}
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Verification will be required for all API calls
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Connection successfully tested on URL https://10.0.2.15:8443/api/v1/
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Connection successfully tested on URL https://10.0.2.15:8443/oapi/v1/
DEBUG :: - providers/lib/kubeshift/client.py :: Using OpenShift Provider KubeClient library
DEBUG :: - providers/openshift.py :: There are currently 2 namespaces in the cluster.
DEBUG :: - providers/openshift.py :: Namespaces: [u'cap', u'sample-project']
INFO :: - providers/openshift.py :: Deploying to OpenShift
INFO :: - providers/lib/kubeshift/openshift.py :: Pods 'mariadb' successfully created
INFO :: - providers/lib/kubeshift/openshift.py :: Services 'mariadb' successfully created
DEBUG :: - plugin.py :: Configuration option 'provider-config' not provided
DEBUG :: - providers/openshift.py :: Given config: {u'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', u'hostport': 9001, u'providertlsverify': False, u'namespace': u'cap', u'image': u'centos/etherpad', u'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4', u'provider-api': u'https://10.0.2.15:8443', u'db_port': 3306, u'db_pass': u'sample_pass', u'db_name': u'sample_name', u'db_user': u'sample_user', u'db_host': u'mariadb', u'provider': u'openshift'}
INFO :: - providers/openshift.py :: Using namespace cap
DEBUG :: - providers/openshift.py :: Processing artifact: artifacts/openshift/.etherpad-rc.yaml
DEBUG :: - providers/openshift.py :: Processing artifact: artifacts/openshift/.etherpad-svc.yaml
DEBUG :: - utils.py :: Finding the users home directory
DEBUG :: - utils.py :: Running as user root. Using home directory /root for configuration data
DEBUG :: - providers/openshift.py :: List of parameters passed: {'provider-tlsverify': None, 'provider-api': u'https://10.0.2.15:8443', 'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}
DEBUG :: - providers/openshift.py :: Generating .kube/config from given parameters
DEBUG :: - providers/openshift.py :: List of parameters passed: {'provider-tlsverify': None, 'provider-api': u'https://10.0.2.15:8443', 'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}
DEBUG :: - providers/openshift.py :: Building from required params
DEBUG :: - providers/openshift.py :: Passed configuration for .kube/config {'contexts': [{'name': 'self', 'context': {'cluster': 'self', 'user': 'self'}}], 'clusters': [{'cluster': {'certificate-authority': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'server': u'https://10.0.2.15:8443'}, 'name': 'self'}], 'users': [{'name': 'self', 'user': {'token': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}}], 'current-context': 'self'}
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Verification will be required for all API calls
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Connection successfully tested on URL https://10.0.2.15:8443/api/v1/
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Connection successfully tested on URL https://10.0.2.15:8443/oapi/v1/
DEBUG :: - providers/lib/kubeshift/client.py :: Using OpenShift Provider KubeClient library
DEBUG :: - providers/openshift.py :: There are currently 2 namespaces in the cluster.
DEBUG :: - providers/openshift.py :: Namespaces: [u'cap', u'sample-project']
INFO :: - providers/openshift.py :: Deploying to OpenShift
INFO :: - providers/lib/kubeshift/openshift.py :: Services 'etherpad-svc' successfully created
INFO :: - providers/lib/kubeshift/openshift.py :: Replicationcontrollers 'etherpad' successfully created
DEBUG :: - nulecule/main.py :: Writing answers to file.
DEBUG :: - nulecule/main.py :: FILE: ./answers.conf.gen
DEBUG :: - nulecule/main.py :: ANSWERS: {u'etherpad-app': {u'db_user': u'sample_user', u'image': u'centos/etherpad', u'db_port': 3306, u'db_pass': u'sample_pass', u'db_name': u'sample_name', u'db_host': u'mariadb', u'hostport': 9001}, u'mariadb-atomicapp': {u'db_pass': u'sample_pass', u'image': u'centos/mariadb', u'db_user': u'sample_user', u'db_name': u'sample_name', u'root_pass': u'MySQLPass'}, u'general': {u'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', u'providertlsverify': False, u'namespace': u'cap', u'provider': u'openshift', u'provider-api': u'https://10.0.2.15:8443', u'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}}
DEBUG :: - nulecule/main.py :: ANSWERS FORMAT: ini
DEBUG :: - utils.py :: Setting gid/uid of ./answers.conf.gen to 0,0
Your application resides in .
Please use this directory for managing your application
real 0m2.939s
user 0m0.204s
sys 0m0.070s
$ time atomic stop projectatomic/etherpad-centos7-atomicapp . -v
docker run -it --rm --privileged -v /home/vagrant/etherpad-centos7-atomicapp:/atomicapp -v /run:/run -v /:/host --net=host --name etherpad-centos7-atomicapp -e USER -e SUDO_USER -e NAME=etherpad-centos7-atomicapp -e IMAGE=projectatomic/etherpad-centos7-atomicapp projectatomic/etherpad-centos7-atomicapp stop . -v
INFO :: - cli/main.py :: Atomic App: 0.6.3 - Mode: Stop
DEBUG :: - cli/main.py :: Final parsed cmdline: stop . -v
DEBUG :: - nulecule/main.py :: NuleculeManager init app_path: .
DEBUG :: - nulecule/main.py :: NuleculeManager init image: None
DEBUG :: - utils.py :: Loading answers from file: ./answers.conf
DEBUG :: - utils.py :: Loading answers from file: ./answers.conf.gen
INFO :: - nulecule/base.py :: Found existing external application: mariadb-centos7-atomicapp Loading:
DEBUG :: - plugin.py :: Configuration option 'provider-config' not provided
DEBUG :: - plugin.py :: Configuration option 'provider-config' not provided
DEBUG :: - plugin.py :: Configuration option 'provider-config' not provided
DEBUG :: - providers/openshift.py :: Given config: {u'root_pass': u'MySQLPass', u'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', u'providertlsverify': False, u'namespace': u'cap', u'image': u'centos/mariadb', u'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4', u'provider-api': u'https://10.0.2.15:8443', u'db_pass': u'sample_pass', u'db_name': u'sample_name', u'db_user': u'sample_user', u'provider': u'openshift'}
INFO :: - providers/openshift.py :: Using namespace cap
DEBUG :: - providers/openshift.py :: Processing artifact: artifacts/kubernetes/.mariadb-pod.yaml
DEBUG :: - providers/openshift.py :: Processing artifact: artifacts/kubernetes/.mariadb-service.yaml
DEBUG :: - utils.py :: Finding the users home directory
DEBUG :: - utils.py :: Running as user root. Using home directory /root for configuration data
DEBUG :: - providers/openshift.py :: List of parameters passed: {'provider-tlsverify': None, 'provider-api': u'https://10.0.2.15:8443', 'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}
DEBUG :: - providers/openshift.py :: Generating .kube/config from given parameters
DEBUG :: - providers/openshift.py :: List of parameters passed: {'provider-tlsverify': None, 'provider-api': u'https://10.0.2.15:8443', 'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}
DEBUG :: - providers/openshift.py :: Building from required params
DEBUG :: - providers/openshift.py :: Passed configuration for .kube/config {'contexts': [{'name': 'self', 'context': {'cluster': 'self', 'user': 'self'}}], 'clusters': [{'cluster': {'certificate-authority': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'server': u'https://10.0.2.15:8443'}, 'name': 'self'}], 'users': [{'name': 'self', 'user': {'token': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}}], 'current-context': 'self'}
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Verification will be required for all API calls
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Connection successfully tested on URL https://10.0.2.15:8443/api/v1/
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Connection successfully tested on URL https://10.0.2.15:8443/oapi/v1/
DEBUG :: - providers/lib/kubeshift/client.py :: Using OpenShift Provider KubeClient library
DEBUG :: - providers/openshift.py :: There are currently 2 namespaces in the cluster.
DEBUG :: - providers/openshift.py :: Namespaces: [u'cap', u'sample-project']
INFO :: - providers/openshift.py :: Undeploying from OpenShift
INFO :: - providers/lib/kubeshift/openshift.py :: Pods 'mariadb' successfully deleted
INFO :: - providers/lib/kubeshift/openshift.py :: Services 'mariadb' successfully deleted
DEBUG :: - plugin.py :: Configuration option 'provider-config' not provided
DEBUG :: - providers/openshift.py :: Given config: {u'hostport': 9001, u'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', u'db_user': u'sample_user', u'providertlsverify': False, u'namespace': u'cap', u'image': u'centos/etherpad', u'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4', u'provider-api': u'https://10.0.2.15:8443', u'db_port': 3306, u'db_pass': u'sample_pass', u'db_name': u'sample_name', u'db_host': u'mariadb', u'provider': u'openshift'}
INFO :: - providers/openshift.py :: Using namespace cap
DEBUG :: - providers/openshift.py :: Processing artifact: artifacts/openshift/.etherpad-rc.yaml
DEBUG :: - providers/openshift.py :: Processing artifact: artifacts/openshift/.etherpad-svc.yaml
DEBUG :: - utils.py :: Finding the users home directory
DEBUG :: - utils.py :: Running as user root. Using home directory /root for configuration data
DEBUG :: - providers/openshift.py :: List of parameters passed: {'provider-tlsverify': None, 'provider-api': u'https://10.0.2.15:8443', 'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}
DEBUG :: - providers/openshift.py :: Generating .kube/config from given parameters
DEBUG :: - providers/openshift.py :: List of parameters passed: {'provider-tlsverify': None, 'provider-api': u'https://10.0.2.15:8443', 'provider-cafile': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'provider-auth': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}
DEBUG :: - providers/openshift.py :: Building from required params
DEBUG :: - providers/openshift.py :: Passed configuration for .kube/config {'contexts': [{'name': 'self', 'context': {'cluster': 'self', 'user': 'self'}}], 'clusters': [{'cluster': {'certificate-authority': u'/host/var/lib/openshift/openshift.local.config/master/ca.crt', 'server': u'https://10.0.2.15:8443'}, 'name': 'self'}], 'users': [{'name': 'self', 'user': {'token': u'UPeqQGxzSOkXq9Pwwg430qCJKJMTGycHp48ZUzb-rW4'}}], 'current-context': 'self'}
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Verification will be required for all API calls
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Connection successfully tested on URL https://10.0.2.15:8443/api/v1/
DEBUG :: - providers/lib/kubeshift/kubebase.py :: Connection successfully tested on URL https://10.0.2.15:8443/oapi/v1/
DEBUG :: - providers/lib/kubeshift/client.py :: Using OpenShift Provider KubeClient library
DEBUG :: - providers/openshift.py :: There are currently 2 namespaces in the cluster.
DEBUG :: - providers/openshift.py :: Namespaces: [u'cap', u'sample-project']
INFO :: - providers/openshift.py :: Undeploying from OpenShift
INFO :: - providers/lib/kubeshift/openshift.py :: Services 'etherpad-svc' successfully deleted
INFO :: - providers/lib/kubeshift/openshift.py :: 'etherpad' successfully scaled to 0
INFO :: - providers/lib/kubeshift/openshift.py :: Replicationcontrollers 'etherpad' successfully deleted
real 0m2.120s
user 0m0.216s
sys 0m0.059s
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment