Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding OSD and ROSA to the Travis configuration #40591

Conversation

pneedle-rh
Copy link
Contributor

@pneedle-rh pneedle-rh commented Jan 14, 2022

This applies to main and enterprise-4.10. #40592 is a separate PR for enterprise-4.9.

This pull request adds the OSD and ROSA collections to the Travis checks. Related PR #40587 was created to test the checks for the two collections.

The PR also updates the build.py script which is called in the .travis.yml file. The addition cleans the drupal-build directory in the Travis VM that is running the checks, rather than just cleaning the distro subdirectory within the drupal-build directory. Without this change, each successive python build.py... command in the travis.yml file will build all of the distros that have been built so far, because the remnants of the previous run continues to exist in the drupal-build directory in the Travis VM.

My understanding is that in main and enterprise-4.10, the build.py script is only called from the .travis.yml file. The sync scripts I think use the build_for_portal.py file instead. Please let me know if the change in this PR might impact other uses for the build.py file that I don't know about. I.e. is there any reason why the previous builds for a different distro might need to remain in the drupal-build directory after the build.py script has run?

We might also need to determine what constitutes a success if multiple distro builds are being run. Would one successful build cause the auto-merge to take place, or would all of the build.py runs need to succeed? How can we test this in Travis?

@pneedle-rh pneedle-rh added peer-review-needed Signifies that the peer review team needs to review this PR do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. branch/enterprise-4.10 labels Jan 14, 2022
@pneedle-rh pneedle-rh added this to the Future Release milestone Jan 14, 2022
@pneedle-rh pneedle-rh self-assigned this Jan 14, 2022
@openshift-ci openshift-ci bot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Jan 14, 2022
@netlify
Copy link

netlify bot commented Jan 14, 2022

✔️ Deploy Preview for osdocs ready!

🔨 Explore the source changes: b83f4db

🔍 Inspect the deploy log: https://app.netlify.com/sites/osdocs/deploys/61e18e0a86f73a0007eeb473

😎 Browse the preview: https://deploy-preview-40591--osdocs.netlify.app

@pneedle-rh pneedle-rh changed the title Adding OSD and ROSA to Travis configuration Adding OSD and ROSA to the Travis configuration Jan 14, 2022
@pneedle-rh pneedle-rh force-pushed the adding-osd-and-rosa-to-travis-config branch from 649a91b to 8d89969 Compare January 14, 2022 12:42
@pneedle-rh pneedle-rh force-pushed the adding-osd-and-rosa-to-travis-config branch from 8d89969 to b83f4db Compare January 14, 2022 14:51
@ahardin-rh
Copy link
Contributor

@pneedle-rh Great catch and these changes LGTM. I'm personally not sure about the impact on other uses for the build.py file, so I will let others weigh in as well.

@@ -14,6 +14,8 @@ install:

script:
- python3 build.py --distro openshift-enterprise --product "OpenShift Container Platform" --version 4.10 --no-upstream-fetch && python3 makeBuild.py
- python3 build.py --distro openshift-dedicated --product "OpenShift Dedicated" --version 4 --no-upstream-fetch && python3 makeBuild.py
- python3 build.py --distro openshift-rosa --product "Red Hat OpenShift Service on AWS" --version 4 --no-upstream-fetch && python3 makeBuild.py

after_success:
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We might also need to determine what constitutes a success if multiple distro builds are being run. Would one successful build cause the automerge to take place, or would all of the build.py runs need to succeed? How can we test this in Travis?

@gaurav-nelson
Copy link
Contributor

gaurav-nelson commented Jan 17, 2022

@pneedle-rh Maybe we can use a build matrix to run all these test in parallel with multiple jobs? https://docs.travis-ci.com/user/build-matrix/

Build matrixes are currently limited to a maximum of 200 jobs for both private and public repositories. If you are on an open-source plan, please remember that Travis CI provides this service free of charge to the community. So please only specify the matrix you actually need.

EDIT: maybe:

jobs:
  include:
    - name: Build openshift-enterprise
    - language: python
      cache: pip
      sudo: required
      before_install:
      - gem install asciidoctor
      - gem install asciidoctor-diagram

      install:
      - pip3 install pyyaml
      - pip3 install aura.tar.gz

      script:
      - python3 build.py --distro openshift-enterprise --product "OpenShift Container Platform" --version 4.10 --no-upstream-fetch && python3 makeBuild.py

      after_success:
      - bash ./automerge.sh

    - name: Build openshift-dedicated
    - language: python
      cache: pip
      sudo: required
      before_install:
      - gem install asciidoctor
      - gem install asciidoctor-diagram

      install:
      - pip3 install pyyaml
      - pip3 install aura.tar.gz

      script:
      - python3 build.py --distro openshift-dedicated --product "OpenShift Dedicated" --version 4 --no-upstream-fetch && python3 makeBuild.py

    - name: Build openshift-rosa
    - language: python
      cache: pip
      sudo: required
      before_install:
      - gem install asciidoctor
      - gem install asciidoctor-diagram

      install:
      - pip3 install pyyaml
      - pip3 install aura.tar.gz

      script:
      - python3 build.py --distro openshift-rosa --product "Red Hat OpenShift Service on AWS" --version 4 --no-upstream-fetch && python3 makeBuild.py

@gaurav-nelson
Copy link
Contributor

Created travis-ci/docs-travis-ci-com#3153 to check on the build jobs. Also created a support issue with Travis CI.

@pneedle-rh
Copy link
Contributor Author

@gaurav-nelson thanks for #40741. That is a much better solution that the one I proposed here, so I am closing this PR as obsoleted by your PR. Thanks again!

@pneedle-rh pneedle-rh closed this Jan 19, 2022
@bobfuru bobfuru modified the milestones: Future Release, OCP 4.10 GA Mar 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
branch/enterprise-4.10 do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. peer-review-needed Signifies that the peer review team needs to review this PR size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants