> For the complete documentation index, see [llms.txt](https://www.saladpuk.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.saladpuk.com/cloud/azure-devops.md).

# Azure DevOps

ตัวคอร์สนี้เราจะมาดูกันว่าการเริ่มต้นทำ DevOps นั้นมันง่ายขนาดไหน โดยเราจะใช้เจ้าสิ่งที่ชื่อว่า **Azure DevOps** มาเป็นตัวช่วยในการทำ **Build pipeline, Repository, Kanban Board** และผองเพื่อนทั้งหลายของสิ่งที่ DevOps ควรจะต้องมี ดังนั้นเริ่มต้นกันเบยยย

{% hint style="success" %}
**แนะนำให้อ่าน**\
สำหรับเพื่อนๆที่ต้องการศึกษาว่า DevOps คืออะไร ก็สามารถเข้าไปดูได้จากบทความนี้เบย [👶 DevOps พื้นฐาน](https://saladpuk.gitbook.io/learn/basic/devops)
{% endhint %}

## 🤔 Azure DevOps มีไรบ้าง ?

ทาง Microsoft เขาได้จัดเต็มมาให้เลย เพราะเขาก็ใช้ตัวนี้ในการทำงานจริงๆเหมือนกัน ดังนั้นเราจะไปไล่ดูกันแต่ละตัวเลยดีกว่าว่ามีไรบ้าง

### 🔥 Azure Boards

ตัวนี้จะเป็นหน้าบอร์ดกำหนดแผนการทำงานต่างๆ เช่นการทำ Product Backlog การทำ Planning ต่างๆ โดยจะออกมาเป็นลักษณะของ Kanban boards โดยมีตัวเลือกให้เราหลายแบบเช่นแบบของ Scrum ซึ่งตัวมันสามารถกำหนดงานได้หลายระดับ เช่น **Epic > Feature > Story > Task** และแต่ละตัวสามารถกำหนดคนรับผิดชอบได้มากกว่า 1 คน ส่วนรายละเอียดอื่นๆเดี๋ยวไปไปลงรายละเอียดต่อที่บทความมันเอานะ ดูรวมๆก็จะคล้ายๆกับ **Trello** แต่มันเหนือกว่ามากเพราะมัน Custom ได้เยอะม๊วกๆ + มี Market เหมือน trello ด้วย

![](/files/-LpsL0QCk6ymRpy_Q53n)

นอกจากนั้นมันยังสามารถผูกตัว Feature, Story, Task ต่างๆเข้ากับการ commit งานของเราได้ด้วย เพื่อให้ระบบมันทำ Automation ในการเลื่อนงานไปยัง state ต่างๆ อีกทั้งยังมีการทำกราฟ สรุป performance ของทีม หรือ ของคนได้อีกด้วย (custom ได้หมดเลย)

![](/files/-LugomR18E4E_wtAnnhm)

สำหรับคนที่ใช้ GitHub อยู่แล้วนี่สบายเลย เพราะเราสามารถทำงานใช้ Azure DevOps ร่วมกับ GitHub ได้เลย

![](/files/-Lp1CLBfTb55Ju_C3MOm)

และอย่างที่บอกว่าเขาก็มี Marketplace ให้เราเลือกไปทำงานร่วมกับส่วนอื่นๆอีกเยอะเบย

![](/files/-LoIpAFVQnJyAs66C6c8)

### 🔥 Azure Pipelines

เป็นตัวที่จะมาช่วยให้เราทำ Build pipeline ได้แบบสะดวกสุดๆ รองรับภาษาหลากหลายม๊วก แถม custom ได้เองเลยถ้าในตัวเลือกไม่มี ดังนั้นเราก็จะสามารถจัดการให้มันตรวจสอบโค้ด + เอางานถึง Environments ต่างๆได้แบบหายห่วงเลยทีเดียว

![](/files/-LsoO8dSeFTs8bwTfdUL)

แถมยังมีตัวเลือกว่าจะให้ build บน Windows หรือ Linux ได้ด้วยนะ และ custom pipeline ได้ตามใจชอบเลย

![](/files/-LrKTskcONE0LN19aAti)

Microservices ก็ไม่หวั่นด้วย Kubernetes เขาก็ดูแลให้เรา

![](/files/-LqwDpgxoC5RMTKkbWcW)

และต่อให้ Source code เราอยู่แห่งหนใดเราก็รองรับนะจ๊ะ ไม่ว่าจะเป็น GitHub, GitLab, Bitbucket, private repo หรืออะไรก็ตามรับได้หมด

![](/files/-LntVp3Bq7PaFY0wlfzo)

### 🔥 Azure Repos

ภายใน Azure DevOps นั้นเขามีให้เราสร้าง Repository ในนั้นได้เลย แถมยังเลือกเป็น Public/Private ได้โดยไม่ต้องเสียเงินเพิ่มอีกด้วย แถมภายใน 1 project เรายังสามารถตั้ง Repo ได้มากกว่า 1 ตัวอีกด้วย แถม features ต่างๆที่ GitHub มีส่วนใหญ่บนนั้นก็มีเช่นกัน

![](/files/-LpsJz1R1Vn0xOXX-KuO)

และนอกเหนือจากนั้น เรายังสามารถตั้งค่าเงื่อนไขในการทำงานกับแต่ละ Branch แต่ละ Repo ได้ด้วย

![](/files/-LpsOiOZINu6XuChKJAY)

### 🔥 Azure Test Plans

สำหรับเรื่องการทดสอบต่างๆก็ไม่น้อยหน้า รองรับการทำ **Automation Testing** และ **Manual Testing** ครบวงจร แถมยังเอามาออกรายงานต่างๆได้ด้วย

![](/files/-M-_T-Vvz8tb9LlVjQpb)

ตัวอย่าง Manual Testing

![](/files/-LsoY5lsEooudjPlnknu)

### 🔥 Azure Artifacts

เนื่องจากตัว Azure DevOps มันมี Repository และทำการ Build project เราได้ ซึ่งไหนๆมันก็มีมาขนาดนี้แล้ว เขาเลยจัดต่อให้มันสามารถเอาไปตั้งเป็น **Packages** ได้ด้วยเช่น **Maven, npm, NuGet, Python packag** ต่างๆแถมยังเลือกเป็น **private** หรือ **public** ก็ได้ด้วย

![](/files/-M-ZPg2Dih4CyozcjI7U)

### 🔥 DevOps tool integrations

สำหรับใครที่ถนัดใช้เครื่องมือในการทำ Automation แบบต่างๆตัวอื่นอยู่แล้ว ก็สามารถใช้ เครื่องมือที่ถนัดเข้ามาร่วมได้เลย อย่างเช่น **Jenkins, Ansible, Chef, Puppet, Terraform**

![](/files/-LnN_XwJ1I0OqbmZAJ_h)

### 🔥 Azure Monitor

ตัวช่วยในการจับความผิดปรกติ + รายงานสถานะของเซิฟเวอร์ของเราทั้งหมด เพื่อให้เราสามารถติดตามสิ่งผิดปรกติในซอฟต์แวร์และแก้ไขปัญหาได้ทันท่วงทีนั่นเอง ซึ่งเจ้าตัวนี้เขามีระบบแสดงผลและแจ้งเตือนที่น่าสนใจมาก เช่นเขาจะบอกมาเลยว่าเซอฟเวอร์เราผิกปรกตินะช่วงนี้ลองเช็กเรื่องนี้หน่อยไหม? หรือเซิฟเวอร์เราตกเรื่อง security แบบนี้นะแถมยังแนะนำวิธีการทำ security ให้อีกต่างหาก ถ้าได้ลองใช้แล้วรับรองว่ารักเบย

![](/files/-LpTsaIRB7Oi05AvSdAs)

และอย่างที่เคยบอกไปว่า งานของเราควรจะทำไว้ที่คลาว์ดังนั้นระบบ Monitoring มีทุกระดับให้เราลองเล่นเลย

![](/files/-Lo5sS1AHHnMOxYkEcrC)

## 🧭 เนื้อหาทั้งหมดของคอร์สนี้

แค่น้ำจิ้มของคอร์ส Azure DevOps ก็น่าสนใจละ เพราะเครื่องเมื่อแต่ละตัวมันใช้ง่ายม๊วกๆจนแทบเรียกว่าไปลองเล่นเองวันนี้ก็ทำเป็นเลยก็ว่าได้ และแต่ละตัวยังจะมาช่วยลดงานของเราทำให้เราชีวิตเราสบายขึ้นเยอะเลย ดังนั้นเราไปลองดูกันดีกว่าว่า ถ้าอยากลองใช้ Azure DevOps กันละ เราจะเริ่มต้นใช้งานยังไงดี

{% hint style="info" %}
คอร์สนี้กำลังค่อยๆเขียนอยู่ ซึ่งจะค่อยๆทยอยอัพเดทลงตรงนี้เรื่อยๆ ส่วนใครที่ไม่อยากพลาดอัพเดทคอร์สนี้หรืออยากรับบทความใหม่ๆ สามารถเข้าไปกด Like เพื่อรับข่าวสารใหม่ๆจาก [**Facebook Blog: Mr.Saladpuk**](https://www.facebook.com/mr.saladpuk) ได้นะครับ 😍
{% endhint %}

{% hint style="warning" %}
บทถัดไปจะเอามาลงตอนเย็นๆวันที่ **4/11**/2019 นะฮ๊าฟ
{% endhint %}

{% content-ref url="/pages/-Lsez5LZcy4qfRm2MQEA" %}
[เล่น Azure DevOps กัน](/cloud/azure-devops/azure-devops.md)
{% endcontent-ref %}

{% content-ref url="/pages/-LsfAq4-F28UMbiSIXI2" %}
[เล่นกับ Repository](/cloud/azure-devops/repository.md)
{% endcontent-ref %}

{% content-ref url="/pages/-LsgP6aFvxgQTqnR2PTF" %}
[ลองทำ Continuous Integration (CI)](/cloud/azure-devops/ci.md)
{% endcontent-ref %}

{% content-ref url="/pages/-LshmCQiEHig\_rAEbRK7" %}
[ลองทำ Continuous Delivery (CD)](/cloud/azure-devops/cd.md)
{% endcontent-ref %}

{% content-ref url="/pages/-Lsp0ICK6fmpEuvSnIpL" %}
[เล่น Kanban Board](/cloud/azure-devops/kanban-board.md)
{% endcontent-ref %}

* การตั้งทีม และ สิทธิ์ต่างๆ
* คิดอะไรออกเดี๋ยวเอามายัดๆลงตรงนี้ละกันนุ๊
