Is this possible?
We’ve got a monorepo that holds all that slns for our given project. The product requires these services to function.
Here’s my question
Is it possible to get a pipeline that will build everything but only release changes?
Eg.
Let’s days I’ve got a
Submission api
User management api
MVC app.
If I make changes to the MVC app, then the pipeline needs to build everything but only indicate the the MVC app needs releasing
Same if I made a change to user management
What if I make a change to all 3 in a single PR? I’d want to build and release everything.
Related
I want to know if it is possible or not to deploy single or selected changes deployment in azure, like github provides for other projects in case of azure function app. I have made few changes and made example API. Which is also deployed. That I don't want but wants to it to keep it in my machine. And don't want to select it on deployment. I read the documentation and it says it overwrites function app. Okay. If it does. But I want for particular code only that I can select commit and publish.
We are developing a robotics product that requires quite a few manual tests in every release cycle and we want to automate the management of these tests.
We envision a process with these steps:
One or more test plans are assigned to one or more testers by new stage in our release pipeline using the Azure DevOps REST API (with the respective build artifact related to the pipeline)
Manual testing takes place
A deployment gate keeps the release in a testing stage until all tests have passed (solvable with a function app that parses the response from: GET https://dev.azure.com/{organization}/{project}/_apis/test/runs?buildUri={buildUri}
Is it possible to assign testers (to test a specific build) using the REST API https://dev.azure.com/{organization}/{project}/_apis/test?
Is it possible to assign testers (to test a specific build) using the
REST API
The answer is yes. You can use Test Point - Update rest api to achieve this.
PATCH https://dev.azure.com/{organization}/{project}/_apis/testplan/Plans/{planId}/Suites/{suiteId}/TestPoint?api-version=6.0-preview.2
Update Test Points. This is used to Reset test point to active, update the outcome of a test point or update the tester of a test point.
I have an Azure DevOps instance where I am trying to control and monitor who is doing releases. So, who pressed the button to do the release and what releases have happened.
I tried in Audit options, but it is not satisfying my requirement.
What is the best way to get what I am looking for?
Thanks in advance…
It's a little unclear what you mean by CONTROL
If you are needing to tighten control of which users are allowed to initiate releases outside of a CI/CD pipeline, this is something you would use the built in object permissions for release pipelines.
I've organized our release pipelines into folders
Each of these folders is treated as an object upon which permissions can be set.
For MONITORING the release pipelines
Again, I tend to just use the All Pipelines folder which gives a list of the releases that happened ordered by date. That view lists the pipeline and gives the users Avatar, which is enough to know who created the release.
Also
There are some out-of-the-box widgets that you can put on your dashboard, but I've found them to be unhelpful on the whole. Not to mention that if you have 100's of pipelines you will want to have something reading from your list of pipelines via REST api and pushing those widgets onto the dashboard via the REST api so that you don't need to manage them all "by hand" through the UI. Then if you're going to get into using the REST api, you might as well write your own tool to report the information you need (and possibly turn it into a widget others can consume from the marketplace). I haven't found anything very effective on reporting/summarizing the collection of release pipelines from the marketplace, but there may be something squirreled away in there somewhere.
At the moment if I update my API so that I include a query parameter on one of my endpoints, I also need to update the ARM template that is used during the Azure DevOps release pipeline to update APIM.
Is there a way to automatically update the ARM template json based on the updated action methods?
The end goal is to have APIM reflect the changes I made in my action methods, without me having to update things in multiple places (ie. action method AND ARM template).
Although this doesn't directly answer your question, I'd like to invite you to explore using Azure API Management DevOps Resource Kit instead, an official tool maintained by the APIM team.
While working on a single Azure Data Factory solution with no Source Control. Is it possible to work parallelly for a team of 3 or more developers, without corrupting the main JSON?
Scenario:
All developers are accessing the same ADF and working on different pipelines at the same time. One of the developer publishes his/her updates, does it somehow overwrites or ignores the changes other developers are publishing?
I tested and found that:
Multiple users can access the same Data factory and working with
different pipelines in same time.
Publish only affect the current user and the current pipeline which
user is developing and editing. It won't overwrites other pipelines.
For you question:
Is it possible to work parallelly for a team of 3 or more developers, without corrupting the main JSON?
Yes, it's possible.
One of the developer publishes his/her updates, does it somehow overwrites or ignores the changes other developers are publishing?
No, it doesn't. For example, user A only develop with pipeline A, then publish again. The Publish only affect the current pipeline, won't overwrite or affection other pipelines.
You could test and prove it.
Update:
Thanks #V_Singh for share us the Microsoft suggestion:
Microsoft suggested to use CI/CD only, otherwise there will be some disparity in code.
Reply from Microsoft:
"In Live Mode can hit unexpected errors if you try to publish because you may have not the latest version ( For Example user A publish, user B is using old version and depends on an old resource and try to publish) not possible. Suggested to please use Git, since it is intended for collaborative scenarios."
Hope this helps.