All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- a bug introduced in v1.1.19 (due to commit
e451d06
) triggered aMissingContextVariableException: Required context class hudson.FilePath is missing
error when the lib is used outside anode {}
and a warning is raised.
getDiffProperties
: Allow the comparaison of properties between a platform or module with itself (minus 2 hours) or between 2 platforms / 2 modules. This uses the REST API /properties/diff - thanks @JefffLD !
createPlatform
: usingPOST /applications
instead of deprecatedPOST /applications/$APP/platforms
- remove buggy uses of
.empty
in favour of.isEmpty
, cf. JENKINS-50863 Impacted methods:getModulePropertiesForPlatform
&updateProperties
.
upsertFromDescriptor
compatibility with Hesperides API v2019-09-20 : sncf-connect-tech#29- bugfix for JenkinsHTTRequester: considering all 2XX HTTP status OK
getTemplates
&deleteTemplate
getTemplate
now requires amoduleType
argument
- Bug de MAJ des propriétés d'instance : add @NonCPS on method
selectModule
andselectModules
- fix #27 - thanks @brunoMod !
- Calling a log method that doesn't exist, now using
steps.echo
- added logs for version ID changes &
Set-Cookie
header - thanks @thomaslhostis !
- we try to build a FQDN based on the Jenkins executor own domain name to set the default API URL
- Consistency case change on
isWorkingcopy
argument (createModule
,setPlatformModuleVersion
,setPlatformModulesVersion
), nowisWorkingCopy
: #17 - thanks @benjaminrene ! - Replaced all the calls to buggy .empty: #20 - thanks @yann-soliman !
- Bugfix: replacing existing iterable properties during platform update: #22 - thanks @A---- !
- replaced
userRights
/groupRights
optional args byfilePerms
- Generalizing optional
copyPropertiesForUpgradedModules
arg tocreatePlatform
/setPlatformVersion
/setPlatformModulesVersion
- Adding optional args
userRights
&groupRights
tocreateTemplate
&updateTemplate
- allowing
copyPropertiesForUpgradedModules
to befalse
insetPlatformModuleVersion
&updatePlatform
- thanks @mareths !
- Adding
copyPropertiesForUpgradedModules
optional arg insetPlatformModuleVersion
- thanks @mareths !
- Adding
updatePropertiesForPlatform
method to update properties same way as you get it fromgetModulePropertiesForPlatform
- thanks @dedalusium !
- Adding
iterables_properties
support for the path-specific properties - thanks @yann-soliman !
- Allow updating all modules having the same name inside a platform - thanks @victorsalaun & @GeoffreyMc !
updateTemplate
- update a template for a given module working copy - thanks @pepcitron & @emartin !upsertTemplate
- upsert (create or update) a template for a given module working copy - thanks @pepcitron & @emartin !getTemplate
- retrieve a template by filename (or title) - thanks @pepcitron & @emartin !upsertFromDescriptor
- upsert (create or update) module(s) and template(s) from a JSON descriptor file - thanks @pepcitron & @emartin !
getModuleVersions
- thanks @efouret !updateInstanceProperties
private method - thanks @achoimet !updateModuleProperties
private method - thanks @achoimet !updatePathSpecificProperties
private method - thanks @achoimet !
updateProperties
the newpath:
-prefix introduced in 1.1.3 had a bug, cf. PR #4 - thanks @achoimet !getAppInfo
method - thanks @efouret !
updateProperties
now the method is easier to understand, she calls 3 others private methods - thanks @achoimet !
updateProperties
now accepts properties paths to specify which module to update - thanks @achoimet !
- Using an application/json Content-Type with DELETE calls
- Exposing
doesWorkingcopyExistForModuleVersion
&doesReleaseExistForModuleVersion
methods - thanks @benjaminrene !
- Allowing
auth
to be null inHesperides
constructor - Properly catching HTTP errors as exceptions with
JenkinsHTTRequester
- thanks @benjaminrene !
deleteInstance
now supports a wildcard '*' value for itsinstance
parameter
Publication on Github
- the
groupId
& the main class name
- this file
createInstance
/deleteInstance
- a new logo
- moving all the pipelines API into
vars/hesperides.groovy
HesperidesUtils
renamed intoHesperides
+ splitted the 500 lines class intotraits
- no more hardcoded default credentials, now using
withCredentials
+ a newauth
parameter - fully gradle-based packaging & publishing
- enforcing
Map args
parameters with_required
validation - systematically using
moduleName
instead ofmodule
when the variable is aString