From: "Daniel P. Berrangé" <berrange@redhat.com>
To: "Philippe Mathieu-Daudé" <philmd@redhat.com>
Cc: "Willian Rampazzo" <willianr@redhat.com>,
"Thomas Huth" <thuth@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
qemu-devel@nongnu.org,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>
Subject: Re: [PATCH v2] gitlab: only let pages be published from default branch
Date: Fri, 23 Jul 2021 13:45:18 +0100 [thread overview]
Message-ID: <YPq53tivqIeMrTCJ@redhat.com> (raw)
In-Reply-To: <7c669c1e-9c09-82b4-76e6-1b6bb6fce026@redhat.com>
On Fri, Jul 23, 2021 at 02:41:47PM +0200, Philippe Mathieu-Daudé wrote:
> On 7/23/21 1:30 PM, Daniel P. Berrangé wrote:
> > GitLab will happily publish pages generated by the latest CI pipeline
> > from any branch:
> >
> > https://docs.gitlab.com/ee/user/project/pages/introduction.html
> >
> > "Remember that GitLab Pages are by default branch/tag agnostic
> > and their deployment relies solely on what you specify in
> > .gitlab-ci.yml. You can limit the pages job with the only
> > parameter, whenever a new commit is pushed to a branch used
> > specifically for your pages."
> >
> > The current "pages" job is not limited, so it is happily publishing
> > docs content from any branch/tag in qemu.git that gets pushed to.
> > This means we're potentially publishing from the "staging" branch
> > or worse from outdated "stable-NNN" branches
> >
> > This change restricts it to only publish from the default branch
> > in the main repository. For contributor forks, however, we allow
> > it to publish from any branch, since users will have arbitrarily
> > named topic branches in flight at any time.
> >
> > Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
> > ---
> > .gitlab-ci.d/buildtest.yml | 18 ++++++++++++++++++
> > 1 file changed, 18 insertions(+)
> >
> > diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
> > index 89df51517c..80b57b7082 100644
> > --- a/.gitlab-ci.d/buildtest.yml
> > +++ b/.gitlab-ci.d/buildtest.yml
> > @@ -663,6 +663,17 @@ build-tools-and-docs-debian:
> >
> > # Prepare for GitLab pages deployment. Anything copied into the
> > # "public" directory will be deployed to $USER.gitlab.io/$PROJECT
> > +#
> > +# GitLab publishes from any branch that triggers a CI pipeline
> > +#
> > +# For the main repo we don't want to publish from 'staging'
> > +# since that content may not be pushed, nor do we wish to
> > +# publish from 'stable-NNN' branches as that content is outdated.
> > +# Thus we restrict to just the default branch
> > +#
> > +# For contributor forks we want to publish from any repo so
> > +# that users can see the results of their commits, regardless
> > +# of what topic branch they're currently using
> > pages:
> > image: $CI_REGISTRY_IMAGE/qemu/debian-amd64:latest
> > stage: test
> > @@ -681,3 +692,10 @@ pages:
> > artifacts:
> > paths:
> > - public
> > + rules:
> > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
> > + when: on_success
> > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project"'
> > + when: never
> > + - if: '$CI_PROJECT_NAMESPACE != "qemu-project"'
> > + when: on_success
> >
>
> This is the same than:
>
> rules:
> - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH ==
> $CI_DEFAULT_BRANCH'
> - if: '$CI_PROJECT_NAMESPACE != "qemu-project"'
> - when: never
>
> But in your case defaults are explicit, so better.
yeah, i find it confusing when the 'when:' clause is left out
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2021-07-23 12:46 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-23 11:30 [PATCH v2] gitlab: only let pages be published from default branch Daniel P. Berrangé
2021-07-23 12:41 ` Philippe Mathieu-Daudé
2021-07-23 12:45 ` Daniel P. Berrangé [this message]
2021-07-27 6:30 ` Thomas Huth
2021-07-27 14:42 ` Willian Rampazzo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YPq53tivqIeMrTCJ@redhat.com \
--to=berrange@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.com \
--cc=wainersm@redhat.com \
--cc=willianr@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.