New features added to each components:
- July 13, 2018
blunderbluss
plugin will now supportrequired_reviewers
in OWNERS file to specify a person or github team to be cc'd on every PR that touches the corresponding part of the code. - June 25, 2018
updateconfig
plugin will now support update/remove keys from a glob match. - June 05, 2018
blunderbuss
plugin may now suggest approvers in addition to reviewers. Useexclude_approvers: true
to revert to previous behavior. - April 10, 2018
cla
plugin now supports/check-cla
command to force rechecking of the CLA status. - February 1, 2018
updateconfig
will now update any configmap on merge - November 14, 2017
jenkins-operator:0.58
exposes prometheus metrics. - November 8, 2017
horologium:0.14
prow periodic job now support cron triggers. See https://godoc.org/gopkg.in/robfig/cron.v2 for doc to the cron library we are using.
Breaking changes to external APIs (labels, GitHub interactions, configuration or deployment) will be documented in this section. Prow is in a pre-release state and no claims of backwards compatibility are made for any external API. Note: versions specified in these announcements may not include bug fixes made in more recent versions so it is recommended that the most recent versions are used when updating deployments.
- July 9, 2018
milestone
format has changed fromtomilestone: maintainers_id: <some_team_id> maintainers_team: <some_team_name>
repo_milestone
repo_milestone: <some_repo_name>: maintainers_id: <some_team_id> maintainers_team: <some_team_name>
- July 2, 2018 the
trigger
plugin will now trust PRs from repo collaborators. Useonly_org_members: true
in the trigger config to temporarily disable this behavior. - June 14, 2018 the
updateconfig
plugin will only add data to yourConfigMaps
using the basename of the updated file, instead of using that and also duplicating the data using the name of theConfigMap
as a key - June 1, 2018 all unquoted
boolean
fields in config.yaml that were unmarshall into typestring
now need to be quoted to avoid unmarshalling error. - May 9, 2018
deck
logs for jobs run asPods
will now return logs for the"test"
container only. - April 2, 2018
updateconfig
format has been changed fromtopath/to/some/other/thing: configName
path/to/some/other/thing: Name: configName # If unspecified, Namespace default to the value of ProwJobNamespace. Namespace: myNamespace
- March 15, 2018
jenkins_operator
is removed from the config in favor ofjenkins_operators
. - March 1, 2018
MilestoneStatus
has been removed from the plugins Configuration in favor of theMilestone
which is shared between two plugins: 1)milestonestatus
and 2)milestone
. The milestonestatus plugin now uses theMilestone
object to get the maintainers team ID - February 27, 2018
jenkins-operator
does not use$BUILD_ID
as a fallback to$PROW_JOB_ID
anymore. - February 15, 2018
jenkins-operator
can now accept the--tot-url
flag and will use the connection totot
to vend build identifiers asplank
does, giving control over where in GCS artifacts land to Prow and away from Jenkins. Furthermore, the$BUILD_ID
variable in Jenkins jobs will now correctly point to the build identifier vended bytot
and a new variable,$PROW_JOB_ID
, points to the identifier used to link ProwJobs to Jenkins builds.$PROW_JOB_ID
fallbacks to$BUILD_ID
for backwards-compatibility, ie. to not break in-flight jobs during the time of the jenkins-operator update. - February 1, 2018 The
config_updater
section inplugins.yaml
now uses amaps
object instead ofconfig_file
,plugin_file
strings. Please switch over before July. - November 30, 2017 If you use tide, you'll need to switch your query format and bump all prow component versions to reflect the changes in #5754.
- November 14, 2017
horologium:0.17
fixes cron job not being scheduled. - November 10, 2017 If you want to use cron feature in prow, you need to bump to:
hook:0.181
,sinker:0.23
,deck:0.62
,splice:0.32
,horologium:0.15
plank:0.60
,jenkins-operator:0.57
andtide:0.12
to avoid error spamming from the config parser. - November 7, 2017
plank:0.56
fixes bug introduced inplank:0.53
that affects controllers using an empty kubernetes selector. - November 7, 2017
jenkins-operator:0.51
provides jobs with the$BUILD_ID
variable as well as the$buildId
variable. The latter is deprecated and will be removed in a future version. - November 6, 2017
plank:0.55
providesPods
with the$BUILD_ID
variable as well as the$BUILD_NUMBER
variable. The latter is deprecated and will be removed in a future version. - November 3, 2017 Added
EmptyDir
volume type. To update tohook:0.176+
orhorologium:0.11+
the following components must have the associated minimum versions:deck:0.58+
,plank:0.54+
,jenkins-operator:0.50+
. - November 2, 2017
plank:0.53
changes thetype
label key toprow.k8s.io/type
and thejob
annotation key toprow.k8s.io/job
added in pods. - October 14, 2017
deck:0:53+
needs to be updated in conjunction withjenkins-operator:0:48+
since Jenkins logs are now exposed from the operator anddeck
needs to use theexternal_agent_logs
option in order to redirect requests to the locationjenkins-operator
exposes logs. - October 13, 2017
hook:0.174
,plank:0.50
, andjenkins-operator:0.47
drop the deprecatedgithub-bot-name
flag. - October 2, 2017
hook:0.171
: The label plugin was split into three plugins (label, sigmention, milestonestatus). Breaking changes:- The configuration key for the milestone maintainer team's ID has been
changed. Previously the team ID was stored in the plugins config at key
label
>>milestone_maintainers_id
. Now that the milestone status labels are handled in themilestonestatus
plugin instead of thelabel
plugin, the team ID is stored at keymilestonestatus
>>maintainers_id
. - The sigmention and milestonestatus plugins must be enabled on any repos that require them since their functionality is no longer included in the label plugin.
- The configuration key for the milestone maintainer team's ID has been
changed. Previously the team ID was stored in the plugins config at key
- September 3, 2017
sinker:0.17
now deletes pods labeled byplank:0.42
in order to avoid cleaning up unrelated pods that happen to be found in the same namespace prow runs pods. If you run other pods in the same namespace, you will have to manually delete or label the prow-owned pods, otherwise you can bulk-label all of them with the following command and let sinker collect them normally:kubectl label pods --all -n pod_namespace created-by-prow=true
- September 1, 2017
deck:0.44
andjenkins-operator:0.41
controllers no longer provide a default value for the--jenkins-token-file
flag. Cluster administrators should provide--jenkins-token-file=/etc/jenkins/jenkins
explicitly when upgrading to a new version of these components if they were previously relying on the default. For more context, please see this pull request. - August 29, 2017 Configuration specific to plugins is now held in the
plugins
ConfigMap
and serialized in this repo in theplugins.yaml
file. Cluster administrators upgrading tohook:0.148
or newer should move plugin configuration from the mainConfigMap
. For more context, please see this pull request.