GitLab team member here. Tutorials are available in the docs [1] and this extensive blog tutorial [2]. Specific use cases with help from Agentic AI are discussed in this guide/whitepaper: "CI/CD modernization: Break down barriers with agentic AI" [3]
In my experience learning and leveraging AI and LLMs in the past 2 years, GitLab Duo understands CI/CD configuration very well and can help with migration questions, tasks, and plans, or with actions where Duo Agentic Chat even analyzes and edits files in the IDE.
If you are using GitLab Duo Agent Platform (currently in Beta), there is also a specific Flow that helps convert a Jenkins CI into a GitLab CI/CD configuration. [4] This was released in 18.3, a demo video is inside the release post [5] (demo project here [6]). You can also find the Agentic AI use case in my GitLab DACH Roadshow talk slides [7].
But actually, no. I had these helpful tips in mind, and wanted to share them with everyone quickly. There is always an opportunity to learn together, and get inspired from feedback :-)
GitLab team member here. Thanks for your feedback.
GitLab Duo provides AI-assisted features in the DevSecOps lifecycle. GitLab Duo Chat was released as GA last week [0] Code Suggestions are GA, too, and help with code completion and generation [1] The documentation provides more insights on availability and usage [2]
Helpful learning resources:
If you are looking for practical examples and prompt tips for Duo Chat, bookmark this longer tutorial "10 best practices for using AI-powered GitLab Duo Chat" in [3]
We have also updated the documentation to add hands-in GitLab Duo examples for different programming languages and environments, helping with how to integrate AI into your workflows efficiently: [4]
At QCon London 2024 two weeks ago, I spoke about "Efficient DevSecOps workflows with a little help from AI." The slides are publicly available at [5], talk summary in [6]
I also recommend the blog post "How to put generative AI to work in your DevSecOps environment" [7] to tackle important questions such as workflow assessments, AI guardrails and how to measure AI impact in your organization.
Last but not least, I started a learning series called "GitLab Duo Coffee Chat" on YouTube [8], showing AI and GitLab Duo in action. I plan to host more sessions in the coming weeks. [9]
Happy to help with more adoption questions, best practices, and development workflows :-)
Thanks for the additional details :) I found bpftime through a social share [0], where it is shown to run bpftrace without root permissions [1], and added it to my newsletter into my eBPF learning series [2].
The search works great. I'm using MkDocs with Material as my personal handbook because of the simplicity -- for example, I usually remember great articles in conversations but always forget their location. Since I started writing my newsletter https://opsindev.news/ including an MkDocs web archive, I can share interesting URLs way faster :) Or let folks discover it by themselves, using the search.
Material for MkDocs also has an insiders build, accessible through sponsorship. https://squidfunk.github.io/mkdocs-material/insiders/ These features add more value to MkDocs -- I initially joined to get GDPR-compliant cookie banners and stayed to support a great project.
> Still not a big fan of how stiff Yaml pipelines feel in Gitlab CI
Maybe the pipeline editor in "Build > Pipeline editor" can help with live linting, or more advanced features such as parent-child pipelines or merge trains.
> It lacks most collaboration options for non-developer users, but we found that they are rarely, if at all, used anyway. Non-developer users can still use an edit button that points to GitLab's web editor and update the docs that way.
The wiki uses the same Rich Text editor as known from issue/MR comments, aiding visual editing with context actions - for example, Markdown tables, rows, columns, or uploading and resizing images.
> Material for MkDocs.
I personally love this project. I'm using it for o11y.love and opsindev.news published via GitLab pages. Editing happens mainly in the browser, using the Web IDE.
Thanks for your feedback. GitLab team member here.
> We(as in everyone) are in a serious need of a new git server product. Just do git serving, and do it well. Preferably in a way multiple nodes can be run active-active for scaling and reliability. No need for cicd (Jenkins is fine for that, thank you very much).
> Web hooks sending and receiving. For example launch a merge request webhook(to lambda via aws api gateway, or to Jenkins). Receive a webhook as merge request approval when some Jenkins job finishes.
You can trigger a pipeline from external webhooks using a trigger token, and execute an action against the GitLab REST API. The example for triggering pipelines in https://docs.gitlab.com/ee/ci/triggers/#trigger-a-pipeline can be expanded into more actions, i.e. using the API to create MR approvals or comments.
> if you create cicd jobs/pipelines there is no way to giving someone an ability to run that pipeline without giving that person ability to push to the repository and submit merge requests. Yes, you can then set it so approval is needed before merge, protecting said pipeline, but why? There has been a ticket on gitlabs own issues page about it for years and it is still not resolved.
A developer role can create non-protected Git branches, merge requests, and as such trigger a pipeline from a merge request. You've mentioned approval rules as a safeguard already - CODEOWNERS can be an additional way to ensure that review workflows are followed. https://docs.gitlab.com/ee/user/project/codeowners/
> You want to scale your cicd worker nodes? They want you to use docker mashine(a deprecated product) instead of writing a Plugin like ec2-fleet for Jenkins.
In my experience learning and leveraging AI and LLMs in the past 2 years, GitLab Duo understands CI/CD configuration very well and can help with migration questions, tasks, and plans, or with actions where Duo Agentic Chat even analyzes and edits files in the IDE.
If you are using GitLab Duo Agent Platform (currently in Beta), there is also a specific Flow that helps convert a Jenkins CI into a GitLab CI/CD configuration. [4] This was released in 18.3, a demo video is inside the release post [5] (demo project here [6]). You can also find the Agentic AI use case in my GitLab DACH Roadshow talk slides [7].
[1] https://docs.gitlab.com/ci/migration/jenkins/
[2] https://about.gitlab.com/blog/jenkins-to-gitlab-migration-ma...
[3] https://about.gitlab.com/the-source/ai/cicd-modernization-br...
[4] https://docs.gitlab.com/user/duo_agent_platform/flows/conver...
[5] https://about.gitlab.com/blog/gitlab-18-3-expanding-ai-orche...
[6] https://gitlab.com/gitlab-da/use-cases/ai/gitlab-duo-agent-p...
[7] https://docs.google.com/presentation/d/e/2PACX-1vTX-DcBV9Rw6...