![Dmitriy Rabotyagov](/assets/img/avatar_default.png)
With current behavior of u-c file that is stored on repo server and migration to shared FS instead of lsyncd, we don't have any reliable path to check for. Also we have issue, that with updated u-c SHA users catch "unrelated" error in python_venv_build role. As a solution, we can create a symlink to the u-c file, that will have persistant name and be updated with repo_server role run. That would give us both file to verify and it can be used as u-c URI. Change-Id: Ie7bdb9137ed69be465f014fa811b750dbec4e428 Related-Bug: #1943978
62 lines
2.5 KiB
YAML
62 lines
2.5 KiB
YAML
---
|
|
# Copyright 2021, BBC
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
- name: Ensure deploy host u-c directory exists
|
|
file:
|
|
state: directory
|
|
path: "{{ repo_upper_constraints_path }}"
|
|
delegate_to: localhost
|
|
|
|
# by default the u-c file is retrieved by https
|
|
- name: Retrieve upper constraints using https
|
|
get_url:
|
|
url: "{{ user_requirements_git_url | default('https://releases.openstack.org/constraints/upper/' ~ requirements_git_install_branch | default('master')) }}"
|
|
dest: "{{ repo_upper_constraints_path }}/{{ 'upper_constraints_' ~ requirements_git_install_branch | default('master') ~ '.txt' }}"
|
|
when: requirements_git_repo is search('http')
|
|
delegate_to: localhost
|
|
|
|
- name: Retrieve local filesystem upper constraints in CI
|
|
command:
|
|
git --git-dir={{ requirements_git_repo.split('file://')[1] }}/.git show {{ requirements_git_install_branch | default('master') }}:upper-constraints.txt
|
|
when: requirements_git_repo is search('file://')
|
|
register: _uc_contents_git
|
|
delegate_to: localhost
|
|
tags:
|
|
- skip_ansible_lint
|
|
|
|
- name: Copy local upper constraints content to a file in CI
|
|
copy:
|
|
content: "{{ _uc_contents_git.stdout }}"
|
|
dest: "{{ repo_upper_constraints_path }}/{{ 'upper_constraints_' ~ requirements_git_install_branch | default('master') ~ '.txt' }}"
|
|
when: requirements_git_repo is search('file://')
|
|
delegate_to: localhost
|
|
|
|
- name: Copy all constraints files from the deploy host to the first repo server
|
|
copy:
|
|
src: "{{ repo_upper_constraints_path }}/"
|
|
dest: "{{ repo_service_home_folder }}/repo/constraints/"
|
|
owner: "{{ repo_service_user_name }}"
|
|
group: "{{ repo_service_group_name }}"
|
|
mode: 0644
|
|
|
|
- name: Create a symlink for constraints file
|
|
file:
|
|
src: "{{ repo_service_home_folder }}/repo/constraints/{{ 'upper_constraints_' ~ requirements_git_install_branch | default('master') ~ '.txt' }}"
|
|
dest: "{{ repo_service_home_folder }}/repo/constraints/upper_constraints_cached.txt"
|
|
owner: "{{ repo_service_user_name }}"
|
|
group: "{{ repo_service_group_name }}"
|
|
state: link
|
|
mode: 0644
|