Giter Club home page Giter Club logo

azuredevops-agents's Introduction

Validate Docker Files

AzureDevOps-agents

Images for self-hosted DevOps agents running in Docker. The preparation of these images has been described in this post: Self-hosted Azure DevOps agents running in Docker.

Credit

Most of the bash scripts in this repository are adopted from the official Hosted images prepared by Microsoft, with minor modifications, taken from this repository: https://github.com/microsoft/azure-pipelines-image-generation/.

The images in this repository feature a modified start.sh script that supports caching of tools and agent files across restarts, as described in the blog post linked above.

Building images

You can use the provided build.sh file to create images on your host. Otherwise, first create the base image:

# from Ubuntu 18.04-base:
docker build -t devopsagentubuntu:18.04 .

Then create other images that depend on it.

Composing tools

It is possible to create an agent with several tools, by editing the FROM statement as desired, in the provided Dockerfiles. For example, it is possible to compose an agent with Python, .NET Core, and PowerShell Core by first building the python image on top of the base image; then building the dotnet image on top of the python image.

This technique can be used in build pipelines, to compose an agent with all desired tools.

To run the images

Create an access token in Azure DevOps, then:

docker run -e AZP_URL=<YOUR-ORGANIZATION-URL> \
-e AZP_TOKEN=<YOUR-TOKEN> \
-e AZP_AGENT_NAME='Self-hosted Ubuntu 18.04' devopsubuntu18.04:latest

# or, from inside the container, in /azp:
AZP_URL=<YOUR-ORGANIZATION-URL> \
AZP_TOKEN=<YOUR-TOKEN> \
AZP_AGENT_NAME='Self-hosted Ubuntu 18.04' ./start.sh

azuredevops-agents's People

Contributors

robertoprevato avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.