format_version: 3
pipelines:
  MicroOS.RelPkgs:
    group: MicroOS.Target
    lock_behavior: unlockWhenFinished
    timer:
      spec: 0 10 * ? * *
      only_on_changes: false
    materials:
      git:
        git: https://github.com/openSUSE/openSUSE-release-tools.git
    environment_variables:
      OSC_CONFIG: /home/go/config/oscrc-staging-bot
    stages:
    - Create.Release.Packages:
        approval: manual
        resources:
        - repo-checker
        tasks:
        - script: ./pkglistgen.py -A https://api.suse.de update_and_solve -p SUSE:SLE-15-SP3:Update:Products:MicroOS52 -s target --only-release-packages --force

  MicroOS.Package.Lists:
    group: MicroOS.Target
    lock_behavior: unlockWhenFinished
    materials:
      repos:
        git: git://botmaster.suse.de/suse-repos.git
        auto_update: true
        destination: repos
        whitelist:
          - SUSE:SLE-15-SP3:Update:Products:MicroOS52_-_standard.yaml
      scripts:
        git: https://github.com/openSUSE/openSUSE-release-tools.git
        auto_update: true
        destination: scripts
        whitelist:
          - DO_NOT_TRIGGER
    environment_variables:
      OSC_CONFIG: /home/go/config/oscrc-staging-bot
    stages:
    - Update.000product:
        resources:
        - repo-checker
        tasks:
        - script: ./scripts/pkglistgen.py -A https://api.suse.de --debug update_and_solve -p SUSE:SLE-15-SP3:Update:Products:MicroOS52 -s target --force

  MicroOS.Images:
    group: MicroOS.Target
    lock_behavior: unlockWhenFinished
    materials:
      repos:
        git: git://botmaster.suse.de/suse-repos.git
        auto_update: true
        whitelist:
          - SUSE:SLE-15-SP3:Update:Products:MicroOS52_-_images.yaml
        destination: repos
      scripts:
        auto_update: true
        git: https://github.com/openSUSE/openSUSE-release-tools.git
        whitelist:
          - DO_NOT_TRIGGER
        destination: scripts
    environment_variables:
      OSC_CONFIG: /home/go/config/oscrc-staging-bot
    stages:
    - Expect.Images.To.Finish:
        resources:
        - staging-bot
        tasks:
        - script: |
            export PYTHONPATH=scripts
            ./scripts/gocd/verify-repo-built-successful.py -A https://api.suse.de -p SUSE:SLE-15-SP3:Update:Products:MicroOS52 -r images

    - Release.Images.To.Test:
        approval: manual
        roles:
        - SLE
        environment_variables:
          OSC_CONFIG: /home/go/config/oscrc-totest-manager
        resources:
        - staging-bot
        tasks:
        - script: |-
            for product in 000product SUSE-MicroOS; do
              osc -A https://api.suse.de release SUSE:SLE-15-SP3:Update:Products:MicroOS52 $product
            done

    - Release.Images.To.Publish:
        approval: manual
        roles:
        - SLE
        environment_variables:
          OSC_CONFIG: /home/go/config/oscrc-totest-manager
        resources:
        - staging-bot
        tasks:
        - script: osc -A https://api.suse.de release SUSE:SLE-15-SP3:Update:Products:MicroOS52:TEST
