Often you need to manage a set of consistently repeating events, where multiple issues are used to track the combined activity of a team. This page describes how to utilize GitLab Issue Import and a few spreadsheet tricks to make it possible to create a repeatable set of issues for future projects.
Import CSV button is at the top of the GitLab project issue list. This feature can be very useful for repeating projects with similar groups of issues / work.
You're familiar with the GitLab structure of how projects, groups, epics, milestones, issues, and labels work. If not, please review GitLab 101- No Tissues with Issues
You're comfortable working in a spreadsheet and using formulas to concatenate text into a cell. note: In my examples, I use the
& operator, which is the same as the
You have Developer permission level or higher in your project. (required to do issue import)
Your issues will be created in the same project. You can still do this for cross-project templates, but you will either need to MOVE issues to the destination project (can be automated) or more manually you would need to upload a separate CSV for each individual project. Check out this automation tutorial for how to automate moving an issue from one project to another.
Import CSVis really simple. It requires only two columns,
Import CSVis really powerful. It allows you to use the /Quick Actions to do cool things to your new issues like:
Decide what project structure will be for your set of issues. Specifically,
labelswill be used for the project,
sub-epicswill be used to track the work, and
milestoneswill you use for this work effort.
If these structures do not already exist in GitLab, configure them now.
First: - Two columns where the BASIC text of the issue title and description go.
raw description, These two columns is where you will enter the text for the titles and descriptions of your issues.
Second: Two columns where the actual text for the issue title and description are 'assembled'
descriptionThese two columns are actually just formulas that combine different cells to make up the Title and Description for your issues.
Third: One or more additional columns to hold issue specific QUICK ACTIONS. In these columns, you can add content such as;
labels, and more can be stored. In the example spreadsheet these columns each contain specific data for each issue:
When you're done it will look like this:
Fourth: If you want to have the same Label or the same Quick Action for ALL the issues. A cell at the top of the spreadsheet is a place for common Quick Actions
Note: it's often much easier to work in the Formula bar in google sheets, which makes it easier to enter multi line text in the cell.
Note: If you are using automation, you could use a label to promote the issue to be an epic or a label to automate moving the issue to another project, to make it confidential, or whatever you want to do with quick actions. Read this automation tutorial to learn more about how automation can update issues for you.
See this publicly available example import spreadsheet.
descriptioncells (including the column headers) and copy the contents.
paste as values. This will eliminate the formulas, but will keep the actual values.
Import Issuesbutton and wait for the magic to happen.
Quick Actioncodes. Then, copy and paste the
quick actionsto your spreadsheet. That way your
quick actionswill not have typos or errors.
issue created date). However, if you list your spreadsheet in the reverse order, then your last issues will be loaded first. That means they will be OLDER, and therefore listed last in GitLab issue lists.