Skip to content

Conversation

@gahr
Copy link
Contributor

@gahr gahr commented Oct 1, 2024

STDOUT_FILENO is defined in unistd.h, see POSIX.

This is required on FreeBSD.

@ppisar ppisar self-assigned this Oct 7, 2024
ppisar added a commit to ppisar/ci-dnf-stack that referenced this pull request Oct 7, 2024
Executing a pull request test from a branch with upper case letters
ended up with this error:

        Command '/var/ARTIFACTS/work-behave-createrepo_crye9wxe5/plans/integration/behave-createrepo_c/tree/tmt-prepare-wrapper.sh-Build-testing-container-default-0' returned 1.

        stderr (2 lines)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        Error: tag container-test-unistd-for-STDOUT_FILENO-master: invalid reference format: repository name must be lowercase
        Error: Failed to build the container.
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The cause was that -c argument of container-test script was built from
a "container-test-unistd-for-STDOUT_FILENO" branch name. The
container-test -c value is then directly passed as an image identifier
to podman build and podman run commands. Problem is that podman, as
well as docker, does not allow upper-case characters in the OCI
identifier.

I wanted to circumvent it in the container-test script, to have a fix
at one place. But one can pass a tag name there (foo/bar:tag) and the
tag is handled case sensitively by docker.

So this patch fixes it on the invocation side.

NOTE: I could not really test it. I only tried a prepare phase of
locally run TMT and it correctly transliterated the branch names. You
should be able to fix by rerunning tests for
<rpm-software-management/createrepo_c#439>.
kontura pushed a commit to rpm-software-management/ci-dnf-stack that referenced this pull request Oct 10, 2024
Executing a pull request test from a branch with upper case letters
ended up with this error:

        Command '/var/ARTIFACTS/work-behave-createrepo_crye9wxe5/plans/integration/behave-createrepo_c/tree/tmt-prepare-wrapper.sh-Build-testing-container-default-0' returned 1.

        stderr (2 lines)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        Error: tag container-test-unistd-for-STDOUT_FILENO-master: invalid reference format: repository name must be lowercase
        Error: Failed to build the container.
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The cause was that -c argument of container-test script was built from
a "container-test-unistd-for-STDOUT_FILENO" branch name. The
container-test -c value is then directly passed as an image identifier
to podman build and podman run commands. Problem is that podman, as
well as docker, does not allow upper-case characters in the OCI
identifier.

I wanted to circumvent it in the container-test script, to have a fix
at one place. But one can pass a tag name there (foo/bar:tag) and the
tag is handled case sensitively by docker.

So this patch fixes it on the invocation side.

NOTE: I could not really test it. I only tried a prepare phase of
locally run TMT and it correctly transliterated the branch names. You
should be able to fix by rerunning tests for
<rpm-software-management/createrepo_c#439>.
STDOUT_FILENO is defined in unistd.h, see [POSIX](https://pubs.opengroup.org/onlinepubs/9799919799/).

This is required on FreeBSD.
@gahr gahr force-pushed the unistd-for-STDOUT_FILENO branch from 7e408a8 to 7afca7d Compare April 8, 2025 11:35
@gahr
Copy link
Contributor Author

gahr commented Apr 24, 2025

ping - can this be merged?

Copy link
Contributor

@ppisar ppisar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks. Now it's good.

@ppisar ppisar merged commit 70e92f6 into rpm-software-management:master Apr 24, 2025
11 checks passed
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.

2 participants