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

(PE-17663) update logic for solaris 11 package name #163

Merged

Conversation

johnduarte
Copy link
Contributor

This commit updates the logic for cleaning a vanagon package version
name to be compatible with the IPS requirements for solaris ll p5p
package naming. It adds the same logic found in vanagon itself for
removing any leading zeros from the dotted segments of the version
string.

Prior to this commit, leading zeros in a version segment were left
in the package name which violates p5p naming rules. This caused
vanagon builds containing such a version to fail the install
process.

Ref:
vanagon ips version code
Solaris 11 package versioning

This commit updates the logic for cleaning a vanagon package version
name to be compatible with the IPS requirements for solaris ll p5p
package naming. It adds the same logic found in vanagon itself for
removing any leading zeros from the dotted segments of the version
string.

Prior to this commit, leading zeros in a version segment were left
in the package name which violates p5p naming rules. This caused
vanagon builds containing such a version to fail the install
process.

Ref:
[vanagon ips version code](https://github.com/puppetlabs/vanagon/blob/master/lib/vanagon/platform/solaris_11.rb#L94-L107)
[Solaris 11 package versioning](http://www.oracle.com/technetwork/articles/servers-storage-admin/ips-package-versioning-2232906.html)
@johnduarte
Copy link
Contributor Author

Ping @highb @MikaelSmith for review.

@highb
Copy link
Contributor

highb commented Sep 27, 2016

@johnduarte 👍 from me, have you run this through acceptance tests yet?

@johnduarte
Copy link
Contributor Author

@highb Ran it via the following

bundle exec beaker --xml --debug --root-keys --repo-proxy --preserve-hosts --config hosts.cfg --type pe --tests acceptance/tests --helper lib/beaker_helper.rb --pre-suite setup/install.rb,setup/agent_upgrade.rb

Where hosts.cfg was the following:

---
HOSTS:
  centos6-64-1:
    pe_dir: http://enterprise.delivery.puppetlabs.net/archives/releases/2016.2.1/
    pe_ver: 2016.2.1
    pe_upgrade_dir: http://enterprise.delivery.puppetlabs.net/2016.5/ci-ready
    pe_upgrade_ver: 2016.5.0-rc0-260-g65958b0
    hypervisor: vmpooler
    platform: el-6-x86_64
    template: centos-6-x86_64
    roles:
    - agent
    - master
    - dashboard
    - database
  solaris11-64-1:
    pe_dir: http://enterprise.delivery.puppetlabs.net/archives/releases/2016.2.1/
    pe_ver: 2016.2.1
    pe_upgrade_dir: http://enterprise.delivery.puppetlabs.net/2016.5/ci-ready
    pe_upgrade_ver: 2016.5.0-rc0-260-g65958b0
    hypervisor: vmpooler
    platform: solaris-11-i386
    template: solaris-11-x86_64
    roles:
    - agent
    - frictionless
CONFIG:
  nfs_server: none
  consoleport: 443
  pooling_api: http://vmpooler.delivery.puppetlabs.net/

Validation of the package filename is successful, but test currently fails due to RE-8072

~# /opt/puppetlabs/bin/puppet agent -t
Info: Using configured environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Info: Caching catalog for f6d94xtdnemepmr.delivery.puppetlabs.net
Info: Applying configuration version '1475012970'
Notice: /Stage[main]/Puppet_agent::Prepare::Package/File[/opt/puppetlabs/packages/puppet-agent@1.6.2.202.830,5.11-1.i386.p5p]/ensure: defined content as '{md5}1cc92425c5b1b9a700c43cabad18cccf'
Notice: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent remove existing repo]/returns: executed successfully
Info: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent remove existing repo]: Scheduling refresh of Exec[puppet_agent create repo]
Notice: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent create repo]: Triggered 'refresh' from 1 events
Info: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent create repo]: Scheduling refresh of Exec[puppet_agent set publisher]
Notice: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent set publisher]: Triggered 'refresh' from 1 events
Info: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent set publisher]: Scheduling refresh of Exec[puppet_agent ensure pkgrepo is up-to-date]
Notice: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent ensure pkgrepo is up-to-date]: Triggered 'refresh' from 1 events
Info: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent ensure pkgrepo is up-to-date]: Scheduling refresh of Exec[puppet_agent copy packages]
Notice: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent copy packages]: Triggered 'refresh' from 1 events
Info: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent copy packages]: Scheduling refresh of Exec[puppet_agent ensure pkg publishers are available]
Notice: /Stage[main]/Puppet_agent::Osfamily::Solaris/Exec[puppet_agent ensure pkg publishers are available]: Triggered 'refresh' from 1 events
Error: Unknown line format pkg: Certificate '/var/pkg/ssl/afdb2b56593e6ede1a777795c11354c467b3b4cb' for publisher 'solarisstudio', needed to access 'https://pkg.oracle.com/solarisstudio/release/', will expire in '28' days.
Error: /Stage[main]/Puppet_agent::Install/Package[puppet-agent]/ensure: change from 1.5.3,5.11-1:20160720T002950Z to 1.6.2.202.830 failed: Unknown line format pkg: Certificate '/var/pkg/ssl/afdb2b56593e6ede1a777795c11354c467b3b4cb' for publisher 'solarisstudio', needed to access 'https://pkg.oracle.com/solarisstudio/release/', will expire in '28' days.
Info: Class[Puppet_agent]: Unscheduling all events on Class[Puppet_agent]
Info: Stage[main]: Unscheduling all events on Stage[main]
Notice: Applied catalog in 50.40 seconds

@MikaelSmith
Copy link
Contributor

Not a big fan of using PE tickets for this, but it's no worse than calling it maint.

@highb
Copy link
Contributor

highb commented Sep 27, 2016

@MikaelSmith Oh yeah, FM is the right project, right?

@MikaelSmith MikaelSmith merged commit eb286d9 into puppetlabs:master Sep 27, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants