[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL 5/7] gitlab-ci: Move edk2 and opensbi YAML files to .gitlab-ci
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PULL 5/7] gitlab-ci: Move edk2 and opensbi YAML files to .gitlab-ci.d folder |
Date: |
Tue, 10 Nov 2020 11:59:55 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.4.0 |
On 10/13/20 4:18 PM, Philippe Mathieu-Daudé wrote:
> On 10/12/20 4:01 PM, Daniel P. Berrangé wrote:
>> On Mon, Oct 12, 2020 at 03:44:00PM +0200, Philippe Mathieu-Daudé wrote:
>>> Hi Thomas, Alex,
>>>
>>> +Daniel
>>>
>>> On 5/28/20 12:10 PM, Thomas Huth wrote:
>>>> We have a dedicated folder for the gitlab-ci - so there is no need
>>>> to clutter the top directory with these .yml files.
>>>>
>>>> Message-Id: <20200525131823.715-5-thuth@redhat.com>
>>>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>>>> Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
>>>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>>>> ---
>>>> .gitlab-ci-edk2.yml => .gitlab-ci.d/edk2.yml | 0
>>>> .gitlab-ci-opensbi.yml => .gitlab-ci.d/opensbi.yml | 0
>>>> .gitlab-ci.yml | 4 ++--
>>>> MAINTAINERS | 2 +-
>>>> 4 files changed, 3 insertions(+), 3 deletions(-)
>>>> rename .gitlab-ci-edk2.yml => .gitlab-ci.d/edk2.yml (100%)
>>>> rename .gitlab-ci-opensbi.yml => .gitlab-ci.d/opensbi.yml (100%)
>>>>
>>>> diff --git a/.gitlab-ci-edk2.yml b/.gitlab-ci.d/edk2.yml
>>>> similarity index 100%
>>>> rename from .gitlab-ci-edk2.yml
>>>> rename to .gitlab-ci.d/edk2.yml
>>>> diff --git a/.gitlab-ci-opensbi.yml b/.gitlab-ci.d/opensbi.yml
>>>> similarity index 100%
>>>> rename from .gitlab-ci-opensbi.yml
>>>> rename to .gitlab-ci.d/opensbi.yml
>>>> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
>>>> index bc6aee6aba..5208d93ff8 100644
>>>> --- a/.gitlab-ci.yml
>>>> +++ b/.gitlab-ci.yml
>>>> @@ -1,6 +1,6 @@
>>>> include:
>>>> - - local: '/.gitlab-ci-edk2.yml'
>>>> - - local: '/.gitlab-ci-opensbi.yml'
>>>> + - local: '/.gitlab-ci.d/edk2.yml'
>>>> + - local: '/.gitlab-ci.d/opensbi.yml'
>>>
>>> It seems these jobs are now always run, the "rules:changes"
>>> to restrict them is ignored.
>>>
>>> I searched a bit and found a plausible explanation here:
>>> https://docs.gitlab.com/ee/ci/yaml/#onlychangesexceptchanges
>>>
>>> "Caution: In pipelines with sources other than the three above
>>> changes can’t
>>> determine if a given file is new or old and always returns true. This
>>> includes pipelines triggered by pushing new tags. Configuring jobs to
>>> use
>>> only: changes with other only: refs keywords is possible, but not
>>> recommended."
>>>
>>> I don't understand what they mean by "three", is a directory considered
>>> a three? Then that would explain the change.
>>
>> The edk2.yml file as a "when: always" clause attached to every rule,
>> so surely this negates the point of filtering by making it always
>> run ?
git show 71920809ceab
+docker-edk2:
+ stage: build
+ rules: # Only run this job when the Dockerfile is modified
+ - changes:
+ - .gitlab-ci-edk2.yml
+ - .gitlab-ci.d/edk2/Dockerfile
+ when: always
Per https://docs.gitlab.com/ee/ci/yaml/#rules-clauses
Rules are evaluated in order until a match is found.
The job is not added to the pipeline:
If no rules match, and there is no standalone
when: on_success, when: delayed or when: always.
For docker-edk2 the rule is "If .gitlab-ci-edk2.yml or
.gitlab-ci.d/edk2/Dockerfile changed, then always add;
else do not add".
> I understand it runs regardless a job in any previous stage failed.
>
> From https://docs.gitlab.com/ee/ci/yaml/#when
>
> * always - execute job regardless of the status of jobs from prior stages.
> * on_success - execute job only when all jobs from prior stages succeed
> (or are considered succeeding because they have allow_failure: true).
> This is the default.
>
> I think I used that because at the time I sent that patch
> some docker image builds were failing. But we don't really
> need it, I'll remove.
Also because this is a long job burning free tier credits pointlessly.
(I'll also do it for the OpenSBI job).
>
> Anyhow this used to work with "when: always", see:
> https://gitlab.com/qemu-project/qemu/-/pipelines/168158357
>
>>
>> Regards,
>> Daniel
>>
>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [PULL 5/7] gitlab-ci: Move edk2 and opensbi YAML files to .gitlab-ci.d folder,
Philippe Mathieu-Daudé <=