Off The Shelf Application
Workflow for off the shelf applications
In this workflow, all files are owned by the user and maintained in a repository under their control, but they are based on an off-the-shelf configuration that is periodically consulted for updates.
1) find and fork an OTS config
2) clone it as your base
The base directory is maintained in a repo whose upstream is an OTS configuration, in this case
some user’s ldap
repo:
mkdir ~/ldap git clone https://github.com/$USER/ldap ~/ldap/base cd ~/ldap/base git remote add upstream git@github.com:$USER/ldap
3) create overlays
As in the bespoke case above, create and populate an overlays directory.
The overlays are siblings to each other and to the base they depend on.
mkdir -p ~/ldap/overlays/staging mkdir -p ~/ldap/overlays/production
The user can maintain the overlays
directory in a
distinct repository.
4) bring up variants
kustomize build ~/ldap/overlays/staging | kubectl apply -f - kustomize build ~/ldap/overlays/production | kubectl apply -f -
You can also use kubectl-v1.14.0 to apply your variants.
kubectl apply -k ~/ldap/overlays/staging kubectl apply -k ~/ldap/overlays/production
5) (optionally) capture changes from upstream
The user can periodically rebase their base to capture changes made in the upstream repository.
cd ~/ldap/base git fetch upstream git rebase upstream/master
Last modified November 4, 2020: Redirect kustomize docs to the new unified site. (0834e152)