DEV Community

Query Filter
Query Filter

Posted on

docker42

- name: "Manual Download: Fetch manifest.json from Artifactory"
  ansible.builtin.get_url:
    # Используем точный путь к артефактам из объекта lightspeed
    url: "{{ lightspeed.artifactory.build_artifacts_url }}/manifest.json"
    # Сохраняем в динамическую директорию, где уже находится RPM
    dest: "{{ openshift_temp_dir.temp_dir }}/{{ lightspeed.build_version }}/manifest.json"
    # Аутентификация через найденные в дампе учетные данные
    url_username: "{{ lightspeed.artifactory.username }}"
    url_password: "{{ lightspeed.artifactory.password }}"
    mode: '0755'
    validate_certs: no
  register: download_manifest

- name: "Discovery: Find RPM and Manifest"
  ansible.builtin.find:
    paths: "{{ openshift_temp_dir.temp_dir }}/{{ lightspeed.build_version }}"
    patterns: 
      - "*.rpm"
      - "manifest.json"
  register: found_artifacts

- name: "Report Discovered Files"
  ansible.builtin.debug:
    msg: 
      - "Search Path: {{ openshift_temp_dir.temp_dir }}/{{ lightspeed.build_version }}"
      - "Files Found: {{ found_artifacts.matched }}"
      - "Details: {{ found_artifacts.files | map(attribute='path') | list }}"

- name: "Fail if manifest is missing"
  ansible.builtin.fail:
    msg: "Critical artifact (manifest.json) was not found after manual download attempt."
  when: found_artifacts.matched < 2
Enter fullscreen mode Exit fullscreen mode

Top comments (0)