Skip to content

Instantly share code, notes, and snippets.

@freyes
Last active September 21, 2023 14:56
Show Gist options
  • Save freyes/ca4d5861551dc1019ae66f564079d88f to your computer and use it in GitHub Desktop.
Save freyes/ca4d5861551dc1019ae66f564079d88f to your computer and use it in GitHub Desktop.

Steps to test:

  1. Setup model-default to always include the ppa
    cat << EOF > model-config.yaml
    #cloud-config
    apt:
      sources:
        lp2023211:
          source: 'ppa:freyes/lp2023211'
    EOF
    juju model-default cloudinit-userdata=@./model-config.yaml
    
  2. Clone c-o-t:
    git clone https://github.com/openstack-charmers/charmed-openstack-tester.git
    
  3. Create a new model: juju add-model jammy-yoga
  4. Verify the cloudinit-userdata was set correctly: juju model-config cloudinit-userdata
  5. Load env variables: source ~/novarc
  6. Create the func-target env running tox -e func-target -- --help
  7. Activate the created environment: source ./.func-target/bin/activate
  8. Cd into the distro-regression directory: cd ./tests/distro-regression/
  9. Start the deployment: functest-deploy -m jammy-yoga -b ./tests/bundles/jammy-yoga.yaml
  10. Check that the PPA was used to do the deployment:
    juju run -a nova-cloud-controller "apt policy nova-common"
    juju run -a nova-compute "apt policy nova-common"
    
  11. Configure the cloud: functest-configure -m keystone_v3_smoke_focal:jammy-yoga
  12. Run tempest: functest-test -m keystone_v3_smoke_focal:jammy-yoga 2>&1 | tee tempest-ppa.log
  13. Downgrade the nova packages:
    juju ssh nova-cloud-controller/0 sudo apt-get install nova-common=3:25.2.0-0ubuntu1
    juju ssh nova-compute/N sudo apt-get install nova-common=3:25.2.0-0ubuntu1
    
  14. Toggle debug to force the restart of services
    juju config nova-cloud-controller debug=true
    juju config nova-compute debug=true
    
  15. Re-run tempest: functest-test -m keystone_v3_smoke_focal:jammy-yoga 2>&1 | tee tempest-downgraded.log
@jadonn
Copy link

jadonn commented Sep 21, 2023

In step 9 when I tried to run functest-deploy -m keystone_v3_smoke_focal:jammy-yoga -b ./tests/bundles/jammy-yoga.yaml, I got the following errors:

2023-09-21 00:06:48 [INFO] ERROR controller keystone_v3_smoke_focal not found

The command then failed. I tried again with functest-deploy -m jammy-yoga -b ./tests/bundles/jammy-yoga.yaml - so dropping the keystone_v3_smoke_focal part in the model argument, and that seems to be working so far. I have a deployment running using the jammy-yoga.yaml bundle. It will probably take a bit to run. I will report back probably tomorrow on what happens with the deployment.

@freyes
Copy link
Author

freyes commented Sep 21, 2023

#cloud-config
cloudinit-userdata: |
[...]

you need to swap those 2 lines, #cloud-config needs to be part of the string passed to cloudinit-userdata, it should look like this:

cloudinit-userdata: |
  #cloud-config
  apt:
    sources:
      lp2023211:
        source: ppa:freyes/lp2023211

@freyes
Copy link
Author

freyes commented Sep 21, 2023

In step 9 when I tried to run functest-deploy -m keystone_v3_smoke_focal:jammy-yoga -b ./tests/bundles/jammy-yoga.yaml, I got the following errors:

2023-09-21 00:06:48 [INFO] ERROR controller keystone_v3_smoke_focal not found

The command then failed. I tried again with functest-deploy -m jammy-yoga -b ./tests/bundles/jammy-yoga.yaml - so dropping the keystone_v3_smoke_focal part in the model argument, and that seems to be working so far. I have a deployment running using the jammy-yoga.yaml bundle. It will probably take a bit to run. I will report back probably tomorrow on what happens with the deployment.

ah, yes, drop that was the right thing to do, I will amend the instructions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment