| Age | Commit message (Collapse) | Author | Files | Lines |
|
The majority of the start.sh code is identical. This removes that
duplicate code while still maintaining the ability to call code in a
specific container.
The start.sh is moved into /usr/local/bin/kolla_start in the container
The extend_start.sh script is called by the kolla_start script at the
location /usr/local/bin/kolla_extend_start . It always exists because
we create a noop kolla_extend_start in the base directory. We override
it with extend_start.sh in a specific image should we need to.
Of note, the neutron-agents container is exempt from this new
structure due to it being a fat container.
Additionally, we fix the inconsistent permissions throughout. 644 for
repo files and the scripts are set to 755 via a Docker RUN command to
ensure someones local perm change won't break upstream containers.
Change-Id: I7da8d19965463ad30ee522a71183e3f092e0d6ad
Closes-Bug: #1501295
|
|
Change-Id: I9bb0a1fac63cc326234b0f06b1e56b43e0753279
Partially-Implements: blueprint replace-config-external
|
|
Change-Id: I4c403edb7cd16f587f30a313c1943f070512eda3
Partially-Implements: blueprint replace-config-external
|
|
Initially it did not use this client due to the fact that the client
didn't seem to want to work in the containers. Now it works fine and
it should be used instead of the deprecated keystone client
Change-Id: Ib0e172c677e200e5df01c478b7ea257b30c0df0b
Closes-Bug: #1490126
|
|
Updated build.py to reflect this change.
Deprecate --template option and make it a noop.
Change-Id: I7cd98d1ee684a4c64984a49597159868152683b2
Partially-Implements: blueprint remove-docker-dir
|
|
As a restructure, nothing is changed from the original behaviour and
naming despite the file structure changing. The symlinks to build had
to be updated generating lots of "deleted" and "new_file".
The new structure is:
docker/${base_distro}/${type}/${container}
base_distro == centos, ubuntu, fedora, etc
type == source, binary, rdo
type rdo is a symlink to binary for backwards compatibility
Two new flags are added to the build-all script to support the ability
to support different base distros and a flag to support binary or source
containers.
There are several added folders that are empty to hold the directory
structure for future containers of these types.
To use a prefix other than centos-rdo- you can set PREFIX in the toplevel
directory .buildconf file
Change-Id: Ifc7bac0d827470f506c8b5c004a833da9ce13b90
|
|
Unify the shell to bash in all Kolla scripts.
Change-Id: Ib9591b2f8f344eb88455c5e9b7ecf2164fb5960a
Implements: blueprint use-bash-shell
|
|
In order for the `check_for_*` functions to be consumed by `wait_for`,
they should notify of their success but not exit.
As a consequence, the previous behavior is restored by the fail_unless_*
companion functions.
With this change, it is now possible to do:
wait_for 30 1 check_for_os_service_running keystone
Change-Id: I16ddf8913027030c3ccb5487713d172904508fd6
|
|
|
|
use the bash wait builtin to wait for the keystone process to exit.
Change-Id: I03057e7925e7e41120c163c0be22ade75050d9f1
|
|
Previously, the keydtone openrc file was not using the proper
auth url, whcih was broken with too many double ticks. Also
changed the auth port from public to admin since keystone user
is an admin tenant. Changed DIR for scripts to align with the
rest of the project.
Change-Id: Iadde3239227e65ecca479b16a7b7db51d3a579c8
|
|
The keystone container was changed to only add a keystone user. The rest
of the infrastructure in Kolla expects the name "admin" from a "can I
use a client to access the APIs perspective." As a result, we need a user
for keystone and a user for admin which this patch adds.
Change-Id: I3a3e938f946df1fd5982e89397ef61368f1f3674
|
|
Adds Keystone Container-Set support
Previously, Keystone containers were configured for use in a
Kubernetes environment. This patch removed k8s dependencies and
adds container set functionality.
Change-Id: I131ce205857110bbee49fe81a4a005f9e273ce09
|
|
This allows Kubernetes to reschedule containers in case a required
variable is missing, for example when the Kubernetes pod is started
before the service.
The checks were cleaned using the following method:
* remove duplicates
* remove check for variables that get a default value in the same file
* check for all variables used in the file
* check for required services when it is obvious.
Change-Id: Ib7e0530c410c61f828d36efe8925a20dc9781eab
|
|
|
|
Kubernetes currently creates FOO_SERVICE_HOST and FOO_SERVICE_PORT env
vars as part of starting the containers. However this is not done when
starting them with plain docker.
Defaulting variables to their common version if they're not already set
allows the usage of --link in plain 'docker run' to wire together
containers.
Co-Authored-By: Charles Crouch <ccrouch@redhat.com>
Change-Id: I91098ff987b18646d901ac63a3a644fbb68fc857
|
|
PUBLIC_IP is more descriptive that MY_IP, it should be used consistently
across Kolla.
Change-Id: Iff6ae903e794ec84a40a300b36512422b7a81f71
|
|
This allows Kubernetes to reschedule the container in case a required
variable is missing, for example when the Kubernetes pod is started
before the service.
Additionally, define the KEYSTONE_ADMIN_SERVICE_HOST and
KEYSTONE_PUBLIC_SERVICE_HOST variables to their common version if not
already set to allow usage outside of Kubernetes with docker link
feature.
Change-Id: Ie0966c18076a770e4031bbf5f777dd1be0ba20bc
Closes-Bug: 1398632
|
|
modify glance and keystone images to log to stdout/stderr, so that logs
can be recovered using "docker logs".
Change-Id: I18470c13142ceaf2f10c32e10f5e835ddaf58550
|
|
add /check.sh to keystone and glance-api images that can be used to
verify proper functionality of the container.
Change-Id: I0a878678fb8e9427d8e99af4896cbc679d3490a4
|
|
Cause keystone start script to exit on any errors (permitting kubernetes
to reschedule the pod).
Closes-bug: 1379057
Change-Id: Ide2eac6495250c8cba91cf9b7409dcb313f6f74b
|
|
make sure that DB_ROOT_PASSWORD is in quotes to prevent errors from
shell metacharacters in the password.
Change-Id: I586ba7bb1d518d4ebfef257f92d315684843dd9b
|
|
when booting the keystone container with an existing database, make sure
to update credentials for admin user and replace existing keystone
endpoint in the service catalog.
Change-Id: I2c66d75210ef7ba5a96077eea15a8c564e99f662
|
|
This renames the keystone services so that they are named by function,
rather than port number (which would be confusing if they were running
on a different port).
Change-Id: Ibb0263a133c28a104563df431870a9effe584012
|
|
This patch updates all the json files that reference the mariadb service
variables to ues the new names.
Labelling things foo-master crept into this repository from the
kubernetes guestbook example (which has redis-master and redis-slaves).
We're not running clustered software at the moment so these labels are
unnecessary.
Change-Id: I229d04c89aa13cb6cc2e1c33a0a7b21e1c6e9caa
|
|
this patch introduces the "crux" [1] tool for creating keystone
users, services, and endpoints in an idempotent fashion. E.g., to
create a user that doesn't exist:
$ crux user-create -n lars -t lars -p secret
creating new tenant
created tenant lars (d74cec5023c4428da533066bb11943db)
creating new user lars
created user lars (adf2c2d92e894a3d90a403c5885f192e)
And performing the same operation a second time:
$ crux user-create -n lars -t lars -p secret
using existing tenant lars (d74cec5023c4428da533066bb11943db)
using existing user lars (adf2c2d92e894a3d90a403c5885f192e)
The behavior is similar for creating keystone endpoints.
[1]: https://github.com/larsks/crux
Change-Id: I694e0c1bdcdde595e1af2ee8ef5d0f239a9ad4cd
|
|
This patch does a service and endpoint create so that each separate service
can find keystone. This patch also makes the sleeping a bit more logical
although there are TODOs in this area to remove the sleep operations.
Change-Id: Icfee464f9473686da89bfa8b2106172cbfd4c1a8
Closes-Bug: #1376975
|
|
Fix a race condition between MariaDB service start and Keystone.
Change-Id: I31384204eca9c7201eb102ec0359b390e88b96ba
|
|
Change-Id: Ic5fe761906e0ea6964c072ae510f7e62706c286b
|
|
|
|
Need PKI setup for keystone to operate.
|
|
|
|
|
|
the keystone commands will fail if the keystone principals already
exist
|
|
|
|
|
|
|
|
|
|
|
|
|