Issue with build pipeline - gitlab

I am trying to implement a CI/CD pipeline as mentioned in this video by "tech with nana".
But I always end up with this error which says -make: command not found.
However, I have written in my pipeline code as explained by her in the video.
How do I fix this?

Check first if your YAML is correctly written.
Typically, -make should be - make (note the space between - and make).
The GitLab pipeline editor can help verify the configuration syntax automatically.

Related

How Do I Query GitLab (issues, milestones, etc) from within a GitLab Pipeline

Problem Summary
I am creating my first GitLab pipeline and setting it up to do a release. I would like to add a change log to the published release information. (found in Deployments -> Releases in the GitLab UI).
I would like to, from the pipeline, query the project for something like "closed issues since the date of the last release" and add those tickets to the published release.
Planned Approach
I am successfully using the "release-cli" tool from GitLab to create the release. I followed the example: "Create release metadata in custom script" on this page.
I found the description tag in the release element can be given a .md file, which seemed perfect for posting my change log. I have made a test .md file and added it as the release description and it looks great. It shows up right under "Evidence Collection" and so I planned to do "Change Log" as the header in my .md file. In the above example, GitLab is clearly using an .md file in their description element for extra information such as this.
Where I'm Stuck
I just can't figure out how to query the gitlab project from the pipeline (for issues or whatever).
I have been looking at GitLab's cli project and see likely has all the tools I need. I can not find any examples of using it in a pipeline. I cannot find for sure that its in a docker image that I can use similar to the release-cli tool.
I am stuck. The lack of information makes me wonder if I'm going down a dead end path. Is there anybody that has done something similar that can give me a basic example? Or an alternative?

How can i solve a stuck Gitlab CI pipeline?

I'm using GitLab CI shell as the executor.
I made an.gitlab-ci.yml, and I determined my code in it when im done
the pipeline got stuck, and I don't know to resolve it.
the error I get
the code I use
A pipeline will be declared as stuck when no requested runner can be available to run it.
Your job configuration requests a runner with the tag docker. Based on the fact that your pipeline is stuck, this tells me that you do not have a GitLab runner available to your project that has a docker tag on it.
To fix this, you'll either have to remove the tag from your job configuration or register a runner with the docker tag (or add the docker tag to an existing runner).
Alright I removed the tags, and it did solve that problem, but now I still get a failed status where i don't know what to do

Rewriting YAML file configuration during runtime in build pipeline using Powershell

I have a task where in I need update the configuration in the YAML file's during build pipeline. I noticed that there is a task which does this, but cant be added in the organization and also I need to update the configuration for at-least 10 yaml files.
https://marketplace.visualstudio.com/items?itemName=jakkaj.vsts-yaml-writer&targetId=7e7d63c7-ba47-433d-affd-94b30e159ada
Can anyone guide me on this on how to achieve this ?
Here are two alternative methods:
Use the Command Line task to run git command to update your yaml files.
Use the Manual Validation task to pause the run and pop up an option box with "Resume" and "Reject", then you will recieve a notification(optional). You can update your YAML files during this time. When your work is done, click the button to resume the run.

Example pipeline task for automated ui-tests with xamarin in appcenter, triggered from Azure DevOps

I want to run our automated ui tests from xamarin ui-tests in appcenter.
But i don't want to start the test runs manually, but rather being triggerd by my Azure DevOps build pipelin. I already found the task for this, but unfortunately the documentation only contains a sample for espresso, and none for xamarin ui-test.
So right now i'm a bit lost on what i have to setup and what commands are really needed to get this going.
I already did successfully run the ui-tests manually on app-center, but getting this married to azure devops is a bit too much for my brain right now (maybe i just overlooked some basic things)
[edit1] I forgot to mention, that i (for some not know reason) cannot use the old graphical yaml builder of azure devops, but are stuck to the yaml file editor. So since the documentation for the graphical yaml builder is much better, i would also be glad if someone would show me, how i could switch back to it in azure devops.
[/edit1]
[edit2]
I think I should just open my eyes before asking a question for which the answer is directly in front of me.
so, i found the graphical yaml builder just on the right of the window :/.
I'll leave this question though and updated it with a working sample file, once i finished creating one.
If someone out there is faster than me, i'm happy to upvote and accept his answer though :).
[/edit2]
So, if anyone of you has a build pipeline task for automated xamarin ui-tests to help me out, i would be really greatful.
Best regards and thx in advance.
Maverick
Update
I now get the following error message:
##[error]Error: Cannot find any file based on d:\a\1\s\com.docuware.mobileclient.apk.
In my Publish Task the file is taken from here:
Upload 'd:\a\1\b\Debug' to file container: '#/9635693/drop'
This is the path i gave for the apk file:
appFile: '$(System.DefaultWorkingDirectory)/com.companyname.filename.apk'
of course i see, that the file is in subfolder named "Debug", but how to tell the task to look in d:\a\1\b for debug and not in d:\a\1\s?

Variable substitution in build pipeline

There are tons of resources online on how to replace JSON configuration files in a release pipeline like this one. I configured this. It works. However, we have multiple integration tests which reach the database too. These tests are run during build time. I haven't seen any option yet to replace config values in the build pipeline. Does it exist? Or do I really have to use this custom task (see screenshot below)?
There is an out-of-the-box task since recently by Microsoft. It's called File Transform. It's currently in preview but it works really well! Haven't had any issues whatsoever with it and it works the same as you would configure it in the release pipeline. Would recommend this any day!
Below you can see my configuration.
There is no out-of-the-box task only to replace tokens/values in files (also in the release pipline the task is Azure App Service Deploy and not only for replace json configuration).
You need to use an external extension from here or write a PowerShell script for that.

Resources