Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
d80d58a
CI: Allow building Ubuntu Kolla container images
markgoddard Aug 8, 2022
a449fee
Merge with stackhpc/wallaby
markgoddard Aug 9, 2022
ce96233
Merge pull request #105 from stackhpc/wallaby-ubuntu-kolla-ci
markgoddard Aug 10, 2022
b3bb3a0
CI: Pull Kayobe container image to ensure latest
markgoddard Aug 10, 2022
b4abef2
Merge pull request #114 from stackhpc/wallaby-pull-kayobe-image
markgoddard Aug 10, 2022
0d340ce
add skydive feature flag
GregWhiteyBialas Aug 10, 2022
f3addef
feat: automatic update of workflows stackhpc/wallaby
stackhpc-ci Aug 10, 2022
c87747b
feat: automatic update of community files stackhpc/wallaby
stackhpc-ci Aug 10, 2022
0dba1c6
Update kayobe-automation to fix rsync issue
markgoddard Aug 10, 2022
c337c45
Merge pull request #126 from stackhpc/wallaby-community-files
markgoddard Aug 10, 2022
abe6221
Merge branch 'stackhpc/wallaby' into wallaby-workflows
markgoddard Aug 10, 2022
7b5c019
Merge pull request #123 from stackhpc/wallaby-workflows
markgoddard Aug 10, 2022
bba7a04
Merge branch 'stackhpc/wallaby' into wallaby-kayobe-automation-rsync
markgoddard Aug 10, 2022
6b62dab
feat: automatic update of workflows stackhpc/wallaby
stackhpc-ci Aug 10, 2022
8bbe1cc
Merge pull request #130 from stackhpc/wallaby-workflows
markgoddard Aug 10, 2022
a85abc4
Merge pull request #115 from stackhpc/add_skydive
markgoddard Aug 11, 2022
f90b22e
Merge pull request #128 from stackhpc/wallaby-kayobe-automation-rsync
markgoddard Aug 11, 2022
f3f95f1
add skydive tag
GregWhiteyBialas Aug 11, 2022
4b1ff96
Merge pull request #132 from stackhpc/add_skydive_tag
markgoddard Aug 11, 2022
7fc7e5b
add skydive to pulled images
GregWhiteyBialas Aug 11, 2022
87a5bc1
Merge pull request #133 from stackhpc/add_skydive_to_pulp
markgoddard Aug 11, 2022
e2e1650
Remove sahara-dashboard fork from sources
priteau Aug 12, 2022
78e6e38
Merge pull request #134 from stackhpc/sahara-dashboard-upstream
markgoddard Aug 12, 2022
d49cafa
README: fix ci-aio and ci-builder setup instructions
markgoddard Aug 17, 2022
e7775cb
Merge pull request #135 from stackhpc/readme-fix
markgoddard Aug 17, 2022
e1ce19f
add name to pulp container
bbezak Aug 18, 2022
b01b261
fix pulp post.yml instead of adding name to seed.yml
bbezak Aug 22, 2022
ee636f2
Merge pull request #137 from stackhpc/fix-pulp-password-set
markgoddard Aug 22, 2022
015c26a
add new skydive tags
GregWhiteyBialas Aug 22, 2022
2e7c430
Merge branch 'stackhpc/wallaby' into add_skydive_to_pulp
GregWhiteyBialas Aug 22, 2022
223f7c8
Merge pull request #139 from stackhpc/add_skydive_to_pulp
GregWhiteyBialas Aug 23, 2022
a14d4e4
Revert "Ubuntu: add host Apt repository configuration"
markgoddard Aug 19, 2022
356da17
Ubuntu: stop syncing Ark Ubuntu mirrors to local Pulp
markgoddard Aug 19, 2022
1c7f77b
Ubuntu: stop using Ark repo mirrors in container images
markgoddard Aug 19, 2022
e7ea0fa
Ubuntu: use newly built Kolla images
markgoddard Aug 23, 2022
b32e6f2
Ubuntu: set Bifrost image tag
markgoddard Aug 24, 2022
4bfb234
CI: add hook for seed container image build
markgoddard Aug 24, 2022
2c50b9f
Merge branch 'stackhpc/wallaby' into wallaby-drop-ubuntu-repos
markgoddard Aug 24, 2022
3e72127
Merge pull request #140 from stackhpc/wallaby-drop-ubuntu-repos
markgoddard Aug 24, 2022
b5347fc
bifrost: Add stackhpc-inspector-plugins to image
markgoddard Aug 25, 2022
f02e3bf
bifrost: update tags
markgoddard Aug 25, 2022
ba355e3
Merge pull request #142 from stackhpc/bifrost-inspector-plugins
markgoddard Aug 25, 2022
2de8b2d
pulp: use pulp_url as advertised content origin
markgoddard Aug 26, 2022
5223756
Merge pull request #143 from stackhpc/wallaby-fix-pulp-host
markgoddard Aug 26, 2022
f43c3ee
README: Install python3-virtualenv for ci-aio & ci-builder environments
markgoddard Aug 30, 2022
3ddd3f5
Merge pull request #145 from stackhpc/wallaby-virtualenv-readme
markgoddard Aug 30, 2022
c729b50
Merge stackhpc/wallaby into stackhpc/xena
markgoddard Aug 31, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/workflows/stackhpc-all-in-one.yml
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,11 @@ jobs:
echo "::add-mask::$ssh_key"
echo "::set-output name=ssh_key::$ssh_key"

# The same tag may be reused (e.g. pr-123), so ensure we have the latest image.
- name: Pull latest Kayobe image
run: |
sudo docker image pull $KAYOBE_IMAGE

- name: Host configure
run: |
sudo -E docker run -t --rm \
Expand Down
12 changes: 10 additions & 2 deletions .github/workflows/stackhpc-container-image-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,14 @@ on:
type: boolean
required: false
default: false
distro:
description: Container image OS distribution
type: choice
required: false
default: centos
options:
- centos
- ubuntu

env:
ANSIBLE_FORCE_COLOR: True
Expand Down Expand Up @@ -85,7 +93,7 @@ jobs:
run: |
source venvs/kayobe/bin/activate &&
source src/kayobe-config/kayobe-env --environment ci-builder &&
kayobe overcloud container image build ${{ github.event.inputs.regexes }} --push
kayobe overcloud container image build ${{ github.event.inputs.regexes }} --push -e kolla_base_distro=${{ inputs.distro }}
env:
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }}
if: github.event.inputs.overcloud == 'true'
Expand All @@ -112,7 +120,7 @@ jobs:
run: |
source venvs/kayobe/bin/activate &&
source src/kayobe-config/kayobe-env --environment ci-builder &&
kayobe seed container image build --push
kayobe seed container image build --push -e kolla_base_distro=${{ inputs.distro }}
env:
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }}
if: github.event.inputs.seed == 'true'
Expand Down
34 changes: 32 additions & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,21 @@ Setup

Access the host via SSH.

Install package dependencies.

On CentOS:

.. code-block:: console

sudo dnf install -y python3-virtualenv

On Ubuntu:

.. code-block:: console

sudo apt update
sudo apt install -y python3-virtualenv

Clone the Kayobe and Kayobe configuration repositories (this one):

.. code-block:: console
Expand All @@ -246,7 +261,7 @@ Clone the Kayobe and Kayobe configuration repositories (this one):
mkdir -p src
pushd src
git clone https://github.com/stackhpc/kayobe.git -b stackhpc/xena
git clone https://github.com/stackhpc/stackhpc-kayobe-config -b stackhpc/xena
git clone https://github.com/stackhpc/stackhpc-kayobe-config -b stackhpc/xena kayobe-config
popd

Create a virtual environment and install Kayobe:
Expand Down Expand Up @@ -337,6 +352,21 @@ Setup

Access the host via SSH.

Install package dependencies.

On CentOS:

.. code-block:: console

sudo dnf install -y python3-virtualenv

On Ubuntu:

.. code-block:: console

sudo apt update
sudo apt install -y python3-virtualenv

Clone the Kayobe and Kayobe configuration repositories (this one):

.. code-block:: console
Expand All @@ -345,7 +375,7 @@ Clone the Kayobe and Kayobe configuration repositories (this one):
mkdir -p src
pushd src
git clone https://github.com/stackhpc/kayobe.git -b stackhpc/xena
git clone https://github.com/stackhpc/stackhpc-kayobe-config -b stackhpc/xena
git clone https://github.com/stackhpc/stackhpc-kayobe-config -b stackhpc/xena kayobe-config
popd

Create a virtual environment and install Kayobe:
Expand Down
26 changes: 4 additions & 22 deletions etc/kayobe/apt.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,21 +17,13 @@
# * filename: name of a file in /etc/apt/apt.conf.d/ in which to write the
# configuration
# Default is an empty list.
apt_config:
# NOTE: Currently the Pulp verbatim publisher does not sync translation
# files, which results in apt update failing. Disable translations until this
# is resolved.
- content: |
Acquire::Languages "none";
filename: 99no-languages
#apt_config:

# List of apt keys. Each item is a dict containing the following keys:
# * url: URL of key
# * filename: Name of a file in which to store the downloaded key
# Default is an empty list.
apt_keys:
- url: "https://download.docker.com/linux/ubuntu/gpg"
filename: docker.asc
#apt_keys:

# A list of Apt repositories.
# * types: whitespace-separated list of repository types, e.g. deb or deb-src
Expand All @@ -46,22 +38,12 @@ apt_keys:
# * architecture: whitespace-separated list of architectures that will be used
# (optional, default is unset)
# Default is an empty list.
apt_repositories:
- url: "{{ stackhpc_repo_ubuntu_focal_url }}"
suites: "{{ ansible_facts.distribution_release }} {{ ansible_facts.distribution_release }}-updates {{ ansible_facts.distribution_release }}-backports"
components: main restricted universe multiverse
- url: "{{ stackhpc_repo_ubuntu_focal_security_url }}"
suites: "{{ ansible_facts.distribution_release }}-security"
components: main restricted universe multiverse
- url: "{{ stackhpc_repo_docker_ce_ubuntu_url }}"
suites: "{{ ansible_facts.distribution_release }}"
components: stable
signed_by: docker.asc
#apt_repositories:

# Whether to disable repositories in /etc/apt/sources.list. This may be used
# when replacing the distribution repositories via apt_repositories.
# Default is false.
apt_disable_sources_list: true
#apt_disable_sources_list:

###############################################################################
# Dummy variable to allow Ansible to accept this file.
Expand Down
2 changes: 1 addition & 1 deletion etc/kayobe/containers/pulp/post.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
- name: Set the Pulp admin password
become: true
command: >-
docker exec -u root {{ seed_containers.pulp.name }}
docker exec -u root pulp
bash -c
'pulpcore-manager reset-admin-password -p {{ pulp_password }}'
no_log: true
Expand Down
6 changes: 3 additions & 3 deletions etc/kayobe/containers/pulp/settings.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
CONTENT_ORIGIN='http://{{ ansible_facts.fqdn }}'
ANSIBLE_API_HOSTNAME='http://{{ ansible_facts.fqdn }}'
ANSIBLE_CONTENT_HOSTNAME='http://{{ ansible_facts.fqdn }}/pulp/content'
CONTENT_ORIGIN='{{ pulp_url }}'
ANSIBLE_API_HOSTNAME='{{ pulp_url }}'
ANSIBLE_CONTENT_HOSTNAME='{{ pulp_url }}/pulp/content'
TOKEN_AUTH_DISABLED=True
1 change: 1 addition & 0 deletions etc/kayobe/environments/ci-builder/stackhpc-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ kolla_enable_octavia: true
kolla_enable_ovn: true
kolla_enable_prometheus: true
kolla_enable_redis: true
kolla_enable_skydive: true

###############################################################################
# Network configuration.
Expand Down
26 changes: 19 additions & 7 deletions etc/kayobe/kolla.yml
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,11 @@ kolla_sources:
type: git
location: "{{ kolla_bifrost_source_url }}"
reference: "{{ kolla_bifrost_source_version }}"
bifrost-base-additions-stackhpc-inspector-plugins:
# Install our custom inspector plugins.
type: git
location: https://github.com/stackhpc/stackhpc-inspector-plugins.git
reference: 1.3.0
cloudkitty-base:
type: git
location: https://github.com/stackhpc/cloudkitty.git
Expand Down Expand Up @@ -216,13 +221,18 @@ kolla_build_blocks:
-e 's/^[# ]*\(baseurl *=.*\)/#\1/g' \
-e '/#baseurl.*/a baseurl={{ repo.url }}' /etc/yum.repos.d/{{ repo.file }}{% if not loop.last %} &&{% endif %} \
{% endfor %}
base_ubuntu_package_sources_list: |
RUN \
rm -f /etc/apt/sources.list && \
{% for repo in stackhpc_ubuntu_focal_repos %}
echo '{{ repo }}' >> /etc/apt/sources.list {% if not loop.last %} && \
{% endif %}
{% endfor %}
# NOTE: Not currently syncing Ubuntu packages, since the on_demand mirror in
# Ark does not work if the upstream mirror pulls packages (which it does
# sometimes).
# base_ubuntu_package_sources_list: |
# RUN \
# rm -f /etc/apt/sources.list && \
# {% for repo in stackhpc_ubuntu_focal_repos %}
# echo '{{ repo }}' >> /etc/apt/sources.list {% if not loop.last %} && \
# {% endif %}
# {% endfor %}
bifrost_base_header: |
ADD additions-archive /
grafana_plugins_install: |
RUN grafana-cli plugins install vonage-status-panel
ironic_inspector_header: |
Expand All @@ -235,6 +245,8 @@ kolla_build_blocks:
# customization is most commonly packages. The operation should be one of
# override, append or remove. The value should be a list.
kolla_build_customizations_common:
bifrost_base_pip_packages_append:
- /additions/*
ironic_inspector_pip_packages_append:
- /additions/*

Expand Down
4 changes: 2 additions & 2 deletions etc/kayobe/kolla/globals.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# yamllint disable-file
---
enable_docker_repo: "{% raw %}{{ ansible_facts.os_family == 'RedHat' }}{% endraw %}"

docker_yum_baseurl: "{{ stackhpc_repo_docker_url }}"
docker_yum_gpgkey: "https://download.docker.com/linux/{% raw %}{{ ansible_facts.distribution | lower }}{% endraw %}/gpg"

{% if kolla_base_distro == 'centos' %}
barbican_tag: xena-20220728T143658
prometheus_tag: xena-20220728T143658
{% endif %}
8 changes: 7 additions & 1 deletion etc/kayobe/pulp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,10 @@ stackhpc_release_pulp_content_url: "{{ stackhpc_release_pulp_url }}/pulp/content
# Debs

# Whether to sync Ubuntu packages.
stackhpc_pulp_sync_ubuntu_focal: "{{ os_distribution == 'ubuntu' }}"
# NOTE: Not currently syncing Ubuntu packages, since the on_demand mirror in
# Ark does not work if the upstream mirror pulls packages (which it does
# sometimes).
stackhpc_pulp_sync_ubuntu_focal: false

stackhpc_pulp_repository_deb_repos:
# Base Ubuntu Focal repositories
Expand Down Expand Up @@ -427,6 +430,9 @@ stackhpc_pulp_images_kolla:
- redis
- redis-base
- redis-sentinel
- skydive-agent
- skydive-analyzer
- skydive-base

# Common parameters for container image repositories.
stackhpc_pulp_repository_container_repos_kolla_common:
Expand Down