Azure Devops 5 kullanıcıya kadar ücretsiz hizmet veriyor fakat bize 1 adet agent veriyor bu deploylarımın beklemesine ve birçok soruna sebep oluyor bende virtualbox üzerinde linux sanal makinemde bulunun kubernetesimde 2 adet agent podu ayağa kaldırarak bu podlara Azure DevOps organizasyonuma erişim izni vereceğim. Böylece container olarak çalışan agentlar, Azure DevOps üzerindeki kodlarıma erişecek ve pipline işlemlerimde agent olarak kubernetesde kaldırdığım podları kullanıyor olacağım.
İlk olarak user settings menüsünden personel acces token oluşturalım.
verdiği tokenı notepad vs kaydedelim.
Daha sonra Azure DevOpsumuza gidelim organizasyon ayarlarımızdan agent pools bölümünden self-hosted tipinde my-vm adlı agent poolu oluşturalım.
Şimdi Kubernetesim kurulu olduğu makineye gidip Namespace ve deploymant yamlı create ediyorum.
kubectl create ns agent
sudo nano agent.yaml
VSTS_ACCOUNT=organizasyon adı
VSTS_TOKEN=personel acces token
VSTS_POOL=azure devopsta oluşturduğumuz agent name
apiVersion: apps/v1
kind: Deployment
metadata:
name: devops-agent
namespace: agent
spec:
selector:
matchLabels:
app: devops-agent
replicas: 2
template:
metadata:
labels:
app: devops-agent
spec:
containers:
- name: devops-agent
image: mcr.microsoft.com/azure-pipelines/vsts-agent
env:
- name: VSTS_ACCOUNT
value: emirdeneme
- name: VSTS_TOKEN
value: igfmiclwv6lmaeyc64hmvfrviz77v
- name: VSTS_POOL
value: my-vm
volumeMounts:
- mountPath: /var/run/docker.sock
name: docker-volume
volumes:
- name: docker-volume
hostPath:
path: /var/run/docker.sock
kubectl create -f agent.yaml
Ayağa kalkması yaklaşık 5 dakika sürüyor podların.
Evet podlar ayağa kalktı Azure Devopsa gidip kontrol edelim.
Organizasyon ayarlarından agent poolsdan my-vm adında agent create etmiştik my-vm girerek agents lar kısmından kontrol sağlayabilirsiniz.Agentlarım geldi online görünüyor.
release pipeline da test edeceğim agentı my-vm seçiyorum.
Evet artık piplinemın virtualboxdaki sanal makinemde kuberneteste oluştuduğum podlarda çalışmaya başladı.
コメント