From 330301876c6227d54c9c05a2c6a1c6706810ec56 Mon Sep 17 00:00:00 2001 From: amanda Date: Fri, 10 Jul 2020 13:12:24 +0100 Subject: [PATCH 1/6] Remove EL6 support --- CHANGES.md | 4 +++ CHECKLIST.md | 10 +++---- actions/bwc_release_packages.meta.yaml | 1 - actions/create_vm.meta.yaml | 1 - actions/create_vm_role.meta.yaml | 4 --- actions/make_rhel_rpms.yaml | 19 ------------- actions/set_hostname.sh | 3 +-- actions/set_hostname_cloud.yaml | 5 +--- actions/setup_e2e_tests.sh | 17 ++---------- actions/st2_prep_release_cd_rules.meta.yaml | 4 +-- actions/st2_prep_release_rules.meta.yaml | 5 ++-- actions/st2_release_packages.meta.yaml | 1 - actions/st2_upgrade_to_enterprise.meta.yaml | 1 - .../workflows/bwc_stage_release_packages.yaml | 1 - actions/workflows/flow_build.yaml | 2 +- .../workflows/st2_stage_release_packages.yaml | 1 - pack.yaml | 2 +- rules/st2_pkg_test_stable_rhel6.yaml | 25 ----------------- .../st2_pkg_test_stable_rhel6_enterprise.yaml | 27 ------------------- 19 files changed, 19 insertions(+), 114 deletions(-) delete mode 100755 actions/make_rhel_rpms.yaml delete mode 100644 rules/st2_pkg_test_stable_rhel6.yaml delete mode 100644 rules/st2_pkg_test_stable_rhel6_enterprise.yaml diff --git a/CHANGES.md b/CHANGES.md index a47b05e5..cb5604d8 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,7 @@ +## 0.1.2 + +Removed EL6 and added EL8 + ## 0.1.1 Disabled rules that report VM provision/destroy messages diff --git a/CHECKLIST.md b/CHECKLIST.md index 5a6967b0..9512c671 100644 --- a/CHECKLIST.md +++ b/CHECKLIST.md @@ -17,12 +17,12 @@ A list of planned features—different for every release, of course–should fol ## 3. Pre-release procedure -- [ ] Test every feature manually in CentOS/RHEL 6. - [ ] Test every feature manually in CentOS/RHEL 7. +- [ ] Test every feature manually in CentOS/RHEL 8. - [ ] Test every feature manually in Ubuntu 16. - [ ] Test every feature manually in Ubuntu 18. -- [ ] Ask someone else to test every feature manually in CentOS/RHEL 6. - [ ] Ask someone else to test every feature manually in CentOS/RHEL 7. +- [ ] Ask someone else to test every feature manually in CentOS/RHEL 8. - [ ] Ask someone else to test every feature manually in Ubuntu 16. - [ ] Ask someone else to test every feature manually in Ubuntu 18. - [ ] If something failed, fix and repeat from the beginning. @@ -47,7 +47,7 @@ st2 key set st2_stable_version 1.2 st2 key set st2_unstable_version 1.3dev st2 key set st2_master_build_number 1 ``` -- [ ] Make sure packaging is completed for st2web, st2flow, Mistral, and st2 itself (x4: Ubuntu 16.04, Ubuntu 18.04, RHEL6, RHEL7). +- [ ] Make sure packaging is completed for st2web, st2flow, Mistral, and st2 itself (x4: Ubuntu 16.04, Ubuntu 18.04, RHEL7, RHEL8). - [ ] Make sure `pytests` are passing and no sudden upstream issues happened (hi, oslo.utils!). - [ ] Create a temporary version tag say v1.3.0 if releasing v1.3.0 so that st2workroom_test passes. Also, remove tag before finalize. - [ ] Run `st2cd.package-publish-release` to push the packages to the download server and finalize the release. @@ -62,12 +62,12 @@ st2 key set st2_master_build_number 1 - [ ] Announce to the team that the code is out, bathe in fame and glory. - [ ] Test every feature manually in Ubuntu 16. - [ ] Test every feature manually in Ubuntu 18. -- [ ] Test every feature manually in CentOS/RHEL 6. - [ ] Test every feature manually in CentOS/RHEL 7. +- [ ] Test every feature manually in CentOS/RHEL 8. - [ ] Ask someone else to test every feature manually in Ubuntu 16. - [ ] Ask someone else to test every feature manually in Ubuntu 18. -- [ ] Ask someone else to test every feature manually in CentOS/RHEL 6. - [ ] Ask someone else to test every feature manually in CentOS/RHEL 7. +- [ ] Ask someone else to test every feature manually in CentOS/RHEL 8. - [ ] If something failed, fix and repeat from the beginning (I know, I know). - [ ] If something failed and can't be fixed, write it down, make it a priority for the next patch release, get a KB article out. diff --git a/actions/bwc_release_packages.meta.yaml b/actions/bwc_release_packages.meta.yaml index f63d417c..6579f265 100755 --- a/actions/bwc_release_packages.meta.yaml +++ b/actions/bwc_release_packages.meta.yaml @@ -10,7 +10,6 @@ parameters: type: array immutable: true default: - - RHEL6 - RHEL7 - RHEL8 - UBUNTU16 diff --git a/actions/create_vm.meta.yaml b/actions/create_vm.meta.yaml index 417df5a2..ce9590fb 100755 --- a/actions/create_vm.meta.yaml +++ b/actions/create_vm.meta.yaml @@ -42,7 +42,6 @@ distro: default: "UBUNTU18" enum: - - "RHEL6" - "RHEL7" - "RHEL8" # TODO: Remove Fedora diff --git a/actions/create_vm_role.meta.yaml b/actions/create_vm_role.meta.yaml index 1ebd53ba..074c3156 100755 --- a/actions/create_vm_role.meta.yaml +++ b/actions/create_vm_role.meta.yaml @@ -48,7 +48,6 @@ parameters: distro: default: UBUNTU18 enum: - - RHEL6 - RHEL7 - RHEL8 # TODO: Remove Fedora @@ -58,16 +57,13 @@ parameters: - UBUNTU18 - pkg_UBUNTU16 - pkg_UBUNTU18 - - pkg_RHEL6 - pkg_RHEL7 - pkg_RHEL8 # TODO: Remove these - - pkg_CENTOS6 - pkg_CENTOS7 - pkg_CENTOS8 # TODO: Remove this - ubuntu # TODO: Remove these - - centos6 - centos7 - centos8 diff --git a/actions/make_rhel_rpms.yaml b/actions/make_rhel_rpms.yaml deleted file mode 100755 index 3b641e8e..00000000 --- a/actions/make_rhel_rpms.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- - name: "make_rhel_rpms" - runner_type: remote-shell-cmd - description: "Use make targets to build RHEL6 rpm packages" - enabled: true - entry_point: "" - parameters: - sudo: - immutable: true - default: false - repo: - type: "string" - default: "st2" - cmd: - immutable: false - default: "cd {{dir}}/{{repo}} && make rhel-rpms" - kwarg_op: - immutable: true - default: "--" diff --git a/actions/set_hostname.sh b/actions/set_hostname.sh index c0888231..d41b2755 100755 --- a/actions/set_hostname.sh +++ b/actions/set_hostname.sh @@ -25,8 +25,7 @@ if [[ ${DISTRO_LCASE} = "ubuntu" ]]; then elif [[ ${DISTRO_LCASE} = "redhat" || ${DISTRO_LCASE} = "centos" ]]; then # Note: We also want to make sure /etc/hostname file matches sed -i -e "s/\(HOSTNAME=\).*/\1${HOSTNAME}/" /etc/sysconfig/network && echo "${HOSTNAME}" > /etc/hostname && hostname ${HOSTNAME} - # RHEL 6 doesn't have hostnamectl, so check for it before we use it - which hostnamectl 2>/dev/null && hostnamectl set-hostname --static ${HOSTNAME} + hostnamectl set-hostname --static ${HOSTNAME} # Make sure the hostname is preserved between the reboots echo "preserve_hostname: true" > /etc/cloud/cloud.cfg.d/99_hostname.cfg elif [[ ${DISTRO_LCASE} = "fedora" ]]; then diff --git a/actions/set_hostname_cloud.yaml b/actions/set_hostname_cloud.yaml index 5601a72f..72811e54 100755 --- a/actions/set_hostname_cloud.yaml +++ b/actions/set_hostname_cloud.yaml @@ -15,7 +15,6 @@ distro: required: true enum: - - "RHEL6" - "RHEL7" - "RHEL8" # TODO: Remove these @@ -25,18 +24,16 @@ - "UBUNTU16" - "UBUNTU18" # TODO: Remove these - - "pkg_CENTOS6" - "pkg_CENTOS7" - "pkg_CENTOS8" # Keep these though - - "pkg_RHEL6" - "pkg_RHEL7" - "pkg_RHEL8" - "pkg_UBUNTU16" - "pkg_UBUNTU18" cmd: immutable: true - default: '{% if distro in ["RHEL6","RHEL7","RHEL8","pkg_CENTOS6","pkg_CENTOS7","pkg_CENTOS8","pkg_RHEL6","pkg_RHEL7","pkg_RHEL8"] -%}{{redhat}}{% elif distro in ["pkg_UBUNTU16","UBUNTU16","pkg_UBUNTU18","UBUNTU18"] -%}{{ubuntu}}{% elif distro in ["F20","F21"] -%}{{fedora}}{% endif -%}' + default: '{% if distro in ["RHEL7","RHEL8","pkg_CENTOS7","pkg_CENTOS8","pkg_RHEL7","pkg_RHEL8"] -%}{{redhat}}{% elif distro in ["pkg_UBUNTU16","UBUNTU16","pkg_UBUNTU18","UBUNTU18"] -%}{{ubuntu}}{% elif distro in ["F20","F21"] -%}{{fedora}}{% endif -%}' redhat: type: "string" immutable: true diff --git a/actions/setup_e2e_tests.sh b/actions/setup_e2e_tests.sh index 5ef5f62c..dafaaf4f 100644 --- a/actions/setup_e2e_tests.sh +++ b/actions/setup_e2e_tests.sh @@ -41,10 +41,7 @@ if [[ -n "$RHTEST" ]]; then sudo service mongod restart fi - if [[ "$RHVERSION" -eq 6 ]]; then - # For RHEL/CentOS 6 - sudo yum install -y python-pip jq epel-release - elif [[ "$RHVERSION" -eq 7 ]]; then + if [[ "$RHVERSION" -eq 7 ]]; then # For RHEL/CentOS 7 sudo yum install -y python-pip jq else @@ -59,11 +56,6 @@ if [[ -n "$RHTEST" ]]; then rm -rf bats-core fi - # Install from GitHub - # RHEL 7+ has both bats and jq package, so we don't need to do this once we - # drop RHEL 6 support - git clone --branch add_per_test_timing_information --depth 1 https://github.com/Kami/bats-core.git - (cd bats-core; sudo ./install.sh /usr/local) elif [[ -n "$DEBTEST" ]]; then DEBVERSION=`lsb_release --release | awk '{ print $2 }'` SUBTYPE=`lsb_release -a 2>&1 | grep Codename | grep -v "LSB" | awk '{print $2}'` @@ -147,12 +139,7 @@ cd st2tests sudo ${PIP} install --upgrade "pip>=9.0,<9.1" sudo ${PIP} install --upgrade "virtualenv==15.1.0" -# wheel==0.30.0 doesn't support python 2.6 (default on el6) -if [[ "$RHVERSION" == 6 ]]; then - virtualenv --always-copy --no-download venv -p /opt/stackstorm/st2/bin/python2.7 -else - virtualenv --no-download venv -fi +virtualenv --no-download venv . venv/bin/activate ${PIP} install -r test-requirements.txt diff --git a/actions/st2_prep_release_cd_rules.meta.yaml b/actions/st2_prep_release_cd_rules.meta.yaml index afd42714..889c6758 100644 --- a/actions/st2_prep_release_cd_rules.meta.yaml +++ b/actions/st2_prep_release_cd_rules.meta.yaml @@ -27,10 +27,10 @@ position: 3 oses: type: string - description: "Space seperated list of operating systems supported by st2 e.g. 'rhel6 rhel7 u16 u18'" + description: "Space seperated list of operating systems supported by st2 e.g. 'rhel7 rhel8 u16 u18'" required: true position: 4 - default: rhel6 rhel7 rhel8 u16 u18 + default: rhel7 rhel8 u16 u18 local_repo: type: string description: Location where to clone the repo. Programmatically determined if not provided. diff --git a/actions/st2_prep_release_rules.meta.yaml b/actions/st2_prep_release_rules.meta.yaml index a2cee54e..b5e86b69 100644 --- a/actions/st2_prep_release_rules.meta.yaml +++ b/actions/st2_prep_release_rules.meta.yaml @@ -15,7 +15,6 @@ parameters: required: true oses: type: string - description: Space separated list of operating systems supported by st2 e.g. 'rhel6 rhel7 u16 u18' + description: Space separated list of operating systems supported by st2 e.g. 'rhel7 u16 u18' required: true - # TODO: Add rhel 8 - default: rhel6 rhel7 u16 u18 + default: rhel7 rhel8 u16 u18 diff --git a/actions/st2_release_packages.meta.yaml b/actions/st2_release_packages.meta.yaml index 528bd566..750ed7d9 100755 --- a/actions/st2_release_packages.meta.yaml +++ b/actions/st2_release_packages.meta.yaml @@ -10,7 +10,6 @@ parameters: type: array immutable: true default: - - RHEL6 - RHEL7 - RHEL8 - UBUNTU16 diff --git a/actions/st2_upgrade_to_enterprise.meta.yaml b/actions/st2_upgrade_to_enterprise.meta.yaml index 02592663..7e55ae72 100644 --- a/actions/st2_upgrade_to_enterprise.meta.yaml +++ b/actions/st2_upgrade_to_enterprise.meta.yaml @@ -13,7 +13,6 @@ parameters: type: string required: true enum: - - RHEL6 - RHEL7 - RHEL8 - UBUNTU16 diff --git a/actions/workflows/bwc_stage_release_packages.yaml b/actions/workflows/bwc_stage_release_packages.yaml index 20a21672..4ee4af67 100644 --- a/actions/workflows/bwc_stage_release_packages.yaml +++ b/actions/workflows/bwc_stage_release_packages.yaml @@ -7,7 +7,6 @@ input: - username: stackstorm - wait - distros: - RHEL6: el6 RHEL7: el7 RHEL8: el8 UBUNTU16: u16 diff --git a/actions/workflows/flow_build.yaml b/actions/workflows/flow_build.yaml index 6fb58aa1..588a496f 100644 --- a/actions/workflows/flow_build.yaml +++ b/actions/workflows/flow_build.yaml @@ -78,7 +78,7 @@ ref: "core.remote_sudo" params: hosts: "{{dl_server}}" - cmd: "cp -Rf /tmp/flow-{{version}}.tar.gz /var/www/sites/releases/html/st2enterprise/apt/trusty/st2flow/ && cp -Rf /tmp/flow-{{version}}.tar.gz /var/www/sites/releases/html/st2enterprise/yum/el/7/st2flow/ && cp -Rf /tmp/flow-{{version}}.tar.gz /var/www/sites/releases/html/st2enterprise/yum/el/6/st2flow/" + cmd: "cp -Rf /tmp/flow-{{version}}.tar.gz /var/www/sites/releases/html/st2enterprise/apt/trusty/st2flow/ && cp -Rf /tmp/flow-{{version}}.tar.gz /var/www/sites/releases/html/st2enterprise/yum/el/7/st2flow/ && cp -Rf /tmp/flow-{{version}}.tar.gz /var/www/sites/releases/html/st2enterprise/yum/el/8/st2flow/" timeout: 1800 on-success: "clean_repo" - diff --git a/actions/workflows/st2_stage_release_packages.yaml b/actions/workflows/st2_stage_release_packages.yaml index 86c100ce..94fb2be2 100644 --- a/actions/workflows/st2_stage_release_packages.yaml +++ b/actions/workflows/st2_stage_release_packages.yaml @@ -6,7 +6,6 @@ input: - projects - wait - distros: - RHEL6: el6 RHEL7: el7 RHEL8: el8 UBUNTU16: u16 diff --git a/pack.yaml b/pack.yaml index dd4bc8a8..94f33715 100644 --- a/pack.yaml +++ b/pack.yaml @@ -1,6 +1,6 @@ --- name : st2cd description : Continuous delivery pipeline at StackStorm -version : 0.1.1 +version : 0.1.2 author : st2-dev email : info@stackstorm.com diff --git a/rules/st2_pkg_test_stable_rhel6.yaml b/rules/st2_pkg_test_stable_rhel6.yaml deleted file mode 100644 index cca1cced..00000000 --- a/rules/st2_pkg_test_stable_rhel6.yaml +++ /dev/null @@ -1,25 +0,0 @@ ---- -name: st2_pkg_test_stable_rhel6 -pack: st2cd -description: Test stable packages -enabled: true - -trigger: - type: core.st2.CronTimer - parameters: - timezone: US/Pacific - hour: 6 - minute: 0 - second: 0 - -criteria: {} - -action: - ref: st2ci.st2_pkg_e2e_test - parameters: - hostname: st2-pkg-stable-el6 - distro: RHEL6 - pkg_env: production - release: stable - version: "3.2.0" - chatops: true diff --git a/rules/st2_pkg_test_stable_rhel6_enterprise.yaml b/rules/st2_pkg_test_stable_rhel6_enterprise.yaml deleted file mode 100644 index 26ee21bf..00000000 --- a/rules/st2_pkg_test_stable_rhel6_enterprise.yaml +++ /dev/null @@ -1,27 +0,0 @@ ---- -name: st2_pkg_test_stable_rhel6_enterprise -pack: st2cd -description: Test stable packages -enabled: true - -trigger: - type: core.st2.CronTimer - parameters: - timezone: US/Pacific - hour: 7 - minute: 0 - second: 0 - -criteria: {} - -action: - ref: st2ci.st2_pkg_e2e_test - parameters: - hostname: st2-ent-pkg-stable-el6 - distro: RHEL6 - pkg_env: production - release: stable - version: "3.2.0" - enterprise: true - enterprise_key: "{{st2kv.system.enterprise_key_prd_stable}}" - chatops: true From 613d4f6b5751afb2c5c6ed97f8fe6417155b514d Mon Sep 17 00:00:00 2001 From: amanda Date: Fri, 10 Jul 2020 15:29:26 +0100 Subject: [PATCH 2/6] Missed EL8 reference --- actions/st2_prep_release_rules.meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/actions/st2_prep_release_rules.meta.yaml b/actions/st2_prep_release_rules.meta.yaml index b5e86b69..d595d05f 100644 --- a/actions/st2_prep_release_rules.meta.yaml +++ b/actions/st2_prep_release_rules.meta.yaml @@ -15,6 +15,6 @@ parameters: required: true oses: type: string - description: Space separated list of operating systems supported by st2 e.g. 'rhel7 u16 u18' + description: Space separated list of operating systems supported by st2 e.g. 'rhel7 rhel8 u16 u18' required: true default: rhel7 rhel8 u16 u18 From f00c1108c274191e81d40c0ce4582fb5860caaef Mon Sep 17 00:00:00 2001 From: amanda Date: Mon, 13 Jul 2020 21:32:51 +0100 Subject: [PATCH 3/6] Address review comments to install bats via yum, therefore also do not need the check on bats-core directory --- actions/setup_e2e_tests.sh | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/actions/setup_e2e_tests.sh b/actions/setup_e2e_tests.sh index dafaaf4f..ebae96bb 100644 --- a/actions/setup_e2e_tests.sh +++ b/actions/setup_e2e_tests.sh @@ -43,19 +43,13 @@ if [[ -n "$RHTEST" ]]; then if [[ "$RHVERSION" -eq 7 ]]; then # For RHEL/CentOS 7 - sudo yum install -y python-pip jq + sudo yum install -y python-pip jq bats else # For RHEL/CentOS 8 and above - sudo yum install -y python3-pip wget jq + sudo yum install -y python3-pip wget jq bats PIP="pip3" fi - # Remove bats-core if it already exists (this happens when test workflows - # are re-run on a server when tests are debugged) - if [[ -d bats-core ]]; then - rm -rf bats-core - fi - elif [[ -n "$DEBTEST" ]]; then DEBVERSION=`lsb_release --release | awk '{ print $2 }'` SUBTYPE=`lsb_release -a 2>&1 | grep Codename | grep -v "LSB" | awk '{print $2}'` From d6dc27c8a4b0972eaf7fc6dfbc017a3047d266ca Mon Sep 17 00:00:00 2001 From: amanda Date: Thu, 16 Jul 2020 16:44:42 +0100 Subject: [PATCH 4/6] Mark TODO as bats not in CentOS 8 --- actions/setup_e2e_tests.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/actions/setup_e2e_tests.sh b/actions/setup_e2e_tests.sh index ebae96bb..7c31cf9c 100644 --- a/actions/setup_e2e_tests.sh +++ b/actions/setup_e2e_tests.sh @@ -46,7 +46,8 @@ if [[ -n "$RHTEST" ]]; then sudo yum install -y python-pip jq bats else # For RHEL/CentOS 8 and above - sudo yum install -y python3-pip wget jq bats + # TODO: Where to source bats for EL 8... + sudo yum install -y python3-pip wget jq PIP="pip3" fi From 41228a091a1a3768b1758025e06d4afff97e8b47 Mon Sep 17 00:00:00 2001 From: amanda Date: Thu, 16 Jul 2020 16:50:32 +0100 Subject: [PATCH 5/6] For EL8 still need bats from github repo --- actions/setup_e2e_tests.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/actions/setup_e2e_tests.sh b/actions/setup_e2e_tests.sh index 7c31cf9c..4790b816 100644 --- a/actions/setup_e2e_tests.sh +++ b/actions/setup_e2e_tests.sh @@ -46,9 +46,12 @@ if [[ -n "$RHTEST" ]]; then sudo yum install -y python-pip jq bats else # For RHEL/CentOS 8 and above - # TODO: Where to source bats for EL 8... sudo yum install -y python3-pip wget jq PIP="pip3" + # bats not available in epel for EL 8, Install from GitHub + rm -rf bats-core + git clone --branch add_per_test_timing_information --depth 1 https://github + (cd bats-core; sudo ./install.sh /usr/local) fi elif [[ -n "$DEBTEST" ]]; then From e2827ca947baccf74b0e31631a2f64b9118308aa Mon Sep 17 00:00:00 2001 From: amanda Date: Fri, 31 Jul 2020 09:31:29 +0100 Subject: [PATCH 6/6] Install bats from npm --- actions/setup_e2e_tests.sh | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/actions/setup_e2e_tests.sh b/actions/setup_e2e_tests.sh index 4790b816..25d35324 100644 --- a/actions/setup_e2e_tests.sh +++ b/actions/setup_e2e_tests.sh @@ -48,10 +48,8 @@ if [[ -n "$RHTEST" ]]; then # For RHEL/CentOS 8 and above sudo yum install -y python3-pip wget jq PIP="pip3" - # bats not available in epel for EL 8, Install from GitHub - rm -rf bats-core - git clone --branch add_per_test_timing_information --depth 1 https://github - (cd bats-core; sudo ./install.sh /usr/local) + # bats not available in epel for EL 8, Install from npm + sudo npm install --global bats fi elif [[ -n "$DEBTEST" ]]; then