nextflow-io / nextflow-io/nextflow

nextflow clone from Gitlab does not work with non main branch or non main.nf pipeline file

Open
#3,801 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

software/git stale
Dominant language
Groovy
Stars
3.5k
Forks
811
Avg merge
2d 11h
Merged PRs (30d)
61

Description

Bug report

Expected behavior and actual behavior

When using nextflow clone command with a public gitlab repository, the repository should be cloned into the local folder.
Also if I provide the info for the branch and the mainScript (different from the default), then it should be used.

An error occurs. Either the project name is invalid or it is not detecting a main.nf file.

Steps to reproduce the problem

Build image with Dockerfile:

FROM quay.io/podman/stable:v4.3

RUN dnf install -y \
  java-11-openjdk.x86_64 \
  which \
  && dnf clean all

RUN echo "unqualified-search-registries = ['docker.io']" >>  /etc/containers/registries.conf
WORKDIR /usr/bin
RUN curl -s https://get.nextflow.io | bash

and run it in podman:

podman run -it --rm registry.gitlab.com/infai/ontoflow/ontoflow-podman:main /bin/bash

In there run

nextflow -c <(printf "mainScript = test.nf") clone -r add_ci https://gitlab.com/infai/semantic-nextflow/modules

Program output

Not a valid project name: infai/semantic-nextflow/modules

Environment
  • Nextflow version: 22.10.6.5843
  • Java version: openjdk 11.0.18 2023-01-17
  • Operating system: Linux, quay.io/podman/stable:v4.3 image in podman
  • Bash version: GNU bash, version 5.2.15(1)-release (x86_64-redhat-linux-gnu)
Additional context

With (parameters at the end and an additional literal at the end)

nextflow -c <(printf "mainScript = test.nf") clone https://gitlab.com/infai/semantic-nextflow/modules -r add_ci page

the error is:

Remote resource not found: https://gitlab.com/api/v4/projects/infai%2Fsemantic-nextflow%2Fmodules/repository/files/main.nf?ref=main

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the reported nextflow clone commands in the provided Podman/Docker environment, using the GitLab repository, add_ci branch, and test.nf script. Trace the clone handling for GitLab URLs, branch selection, and non-default main scripts; done means the repository clones successfully without requiring main.nf or the default branch.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, gitlab, java
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.