Đường ống phát hành Azure DevOps, YAML? [đóng cửa]


85

Tôi đang thực hiện theo quy trình này để tạo đường dẫn xây dựng YAML cho dự án .NET Core Web API:

https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started-yaml?view=vsts

Khi nói đến việc phát hành nó, tôi lưu ý rằng Azure DevOps (mới được đổi tên) dường như không hỗ trợ YAML để xác định đường ống phát hành. Tuy nhiên, tôi có thể thấy rằng các tác vụ triển khai đã được xác định, ví dụ:

https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-rm-web-app-deployment?view=vsts

Chúng tôi đang mong đợi bản nâng cấp cho chức năng đường ống phát hành để hỗ trợ YAML và nếu có thì khi nào?


Sắp tới, tại Bản dựng 2019: youtube.com/watch?v=ORy3OeqLZlE Đường ống nhiều giai đoạn (và Bản phát hành YAML) hiện đã được xem trước. Bật nó trong mục menu Tính năng xem trước.
nullforce

2
Ai đó có thể giúp tôi hiểu tại sao câu hỏi này lạc đề không? Đối với tôi, nó có vẻ như là một câu hỏi hay cho stackoverflow.
Tobske

Câu trả lời:


58

Tại thời điểm viết câu trả lời này, dòng thời gian của các tính năng phản ánh các bản phát hành yaml sẽ đến vào quý 3 năm 2018.

https://docs.microsoft.com/en-us/azure/devops/release-notes/

Cập nhật: Điều này đã bị va chạm một vài lần. Kiểm tra các nhận xét bên dưới được khuyến nghị vì mọi người đã cung cấp các bản cập nhật khi họ tìm thấy chúng.

Cập nhật

Theo nhận xét, điều này hiện có thể thực hiện được: https://devblogs.microsoft.com/devops/whats-new-with-azure-pipelines/ . Phần sau được sao chép và dán từ bài báo và minh họa bằng các giai đoạn khác nhau:

stages:
- stage: Build
  jobs:
  - job: Build
    pool:
      vmImage: 'Ubuntu-16.04'
    continueOnError: true
    steps:
    - script: echo my first build job
- stage: Deploy
  jobs:
    # track deployments on the environment
  - deployment: DeployWeb
    pool:
      vmImage: 'Ubuntu-16.04'
    # creates an environment if it doesn’t exist
    environment: 'smarthotel-dev'
    strategy:
      # default deployment strategy
      runOnce:
        deploy:
          steps:
          - script: echo my first deployment

9
Bây giờ nó đã có trong Tính năng Q4 2018.
sschoof


6
Tôi đã liên hệ qua twitter ngày hôm qua. Các định nghĩa về bản phát hành YAML đang được thực hiện ngay trong phút này với mục đích là bản xem trước riêng tư vào cuối tháng 3. Chủ đề đầy đủ tại twitter.com/gopranty/status/1088320931745935360?s=21
rh072005

5
Mục công việc mới nhất theo dõi mục này - dev.azure.com/mseng/AzureDevOpsRoadmap/_workitems/edit/1364226
antmeehan


6

Trải nghiệm tạo đường ống xây dựng YAML đang ở trong bản xem trước. (hôm nay là 2018-12-04)

YAML cho các đường ống phát hành dường như vẫn còn cách xa: Quý 2 năm 2019

Các tính năng xem trước có thể được bật từ hồ sơ của bạn như sau:

menu hồ sơ

Tính năng YAML

CHỈNH SỬA: Như nullforce đã chỉ ra trong nhận xét, điều này chỉ cho phép trải nghiệm YAML để xây dựng đường ống chứ không giải phóng đường ống.

CẬP NHẬT (2019-05-16): Sau "Bản dựng 2019" của Microsoft, trải nghiệm YAML đầy đủ cho cả xây dựng và triển khai giờ đây sẽ khả thi trong cùng một tệp đường ống YAML.


3
Câu hỏi này hỏi về Phát hành đường ống, không phải Xây dựng đường ống. Tính năng xem trước mà bạn chỉ định chỉ bật YAML Xây dựng đường ống.
nullforce

@nullforce Cảm ơn bạn, tôi đã thêm phần sửa chữa của bạn vào câu trả lời của mình và sẽ cố gắng cập nhật nó nếu tính năng này được bật cho các đường ống phát hành hoặc khi yaml cũng ra khỏi bản xem trước.
Jim Wolff

1
Nó vẫn không có sẵn.
ATL_DEV

@ATL_DEV bạn có thể giải thích về trạng thái hoặc liên kết đến các tài nguyên liên quan đến vấn đề này không, để tôi có thể sửa câu trả lời. Đối với tôi nó có vẻ như nó đang trực tuyến: docs
Jim Wolff

@Jim Wolff-- Microsoft là những kẻ dối trá! Chỉ có thể định cấu hình các phần triển khai và phát hành thông qua giao diện người dùng tồi tàn của nó.
ATL_DEV

5

Nhóm Sản phẩm đang làm việc trên nó. Bạn có thể theo dõi cập nhật thông qua Ghi chú phát hành .


1
"Nhóm Sản phẩm" vẫn chưa làm được gì sau 1 năm. Giao diện người dùng Azure Dev Ops vẫn còn khủng khiếp và hỗ trợ yaml cho Triển khai vẫn không có ở đó mặc dù tất cả những lời hứa suông. Tài liệu không tồn tại và nằm rải rác trên mạng, Azure Dev Ops là một thiết bị có thể sử dụng! Microsoft nên tìm việc khác để làm,
ATL_DEV

Chỉ vì mục đích chính xác về mặt kỹ thuật - mặc dù nhận xét đó đã được đăng vào tháng 11 năm 2019 nói rằng hỗ trợ triển khai YAML "vẫn chưa có", nó thực sự đã được thêm vào Azure DevOps (không có khoảng trống) vào tháng 5 năm 2019. Các câu trả lời khác và ý kiến ​​nhận được nhiều hơn vào điều này. Chỉ muốn đảm bảo rằng ai đó đang đọc nó sẽ hiểu sai.
MikeBaz - MSFT

xin chào, bạn có thể trả lời câu hỏi này không Starian? stackoverflow.com/questions/64546693/…
alansmith4785

4

Tôi đang thực hiện một việc như thế này ngay lúc này, nhưng tôi đang sử dụng các API REST hiện tại. Những gì tôi đang làm tương tự như những gì tôi đã ghi ở đây ( Làm cách nào để bạn nhập định nghĩa phát hành trong VSTS? ). Về cơ bản, tôi đang lưu tệp Đường ống phát hành JSON được tạo mẫu vào kho lưu trữ mã nguồn với các trình giữ chỗ có thể thay đổi và được nhúng số phiên bản. Sau đó, có một tập lệnh PowerShell đang gọi Azure DevOps (đó là một từ dài, tôi thích nhập VSTS hơn, có lẽ tôi sẽ bắt đầu nhập AD)

  • Các API REST để kiểm tra sự tồn tại của Đường ống phát hành - hoạt động
  • Tạo nếu nó không tồn tại - hoạt động
  • So sánh các phiên bản nhúng và cập nhật và nếu cần thiết (Tôi bị mắc kẹt ở đây, nhưng tôi sẽ giải quyết nó, trả lại lỗi rằng đường ống đang được cập nhật không thay đổi mặc dù tôi đã thay đổi nó.)

Tôi muốn điều này thực thi trong quá trình xây dựng đường ống để tôi không còn phải sửa đổi nhiều đường ống phát hành tương tự theo cách thủ công. Tôi cũng muốn đây là một tệp YAML, nhưng đây là những gì tôi có ngày hôm nay. Tôi hi vọng cái này giúp được.


1
Tôi bị mắc kẹt và đã tạm dừng nỗ lực làm việc của mình trong quá trình CẬP NHẬT. Tại sao? Mẫu json Định nghĩa phát hành có một ID cho mỗi bước xây dựng. Các ID phải là một số cụ thể khi Đường ống phát hành đang được tạo. Số ID được thay đổi sau khi nó được tạo. Vì vậy, khi bạn CẬP NHẬT Đường ống phát hành, bạn không còn có thể sử dụng số ID giai đoạn "mới" (chúng được dành riêng khi tạo Đường ống phát hành ban đầu), nhưng thay vào đó, bạn cần sử dụng ID giai đoạn hợp lệ hiện có thể là bất kỳ thứ gì.
Antebios

Vì vậy, quy trình thực tế nên là: Để tạo mẫu sử dụng quy trình. Đối với định nghĩa bản phát hành tải xuống quy trình cập nhật và so sánh với mẫu và cập nhật định nghĩa bản phát hành đã tải xuống và sau đó cập nhật định nghĩa đó trở lại VSTS. Chà! Điều đó có nghĩa là tôi cần viết quy trình so sánh và kiểm tra lỗi của riêng mình.
Antebios

trên thực tế, đối với định nghĩa bản phát hành mới (POST), bạn có thể bỏ qua thuộc idtính - idđối với đối tượng def của bản phát hành và trong tất cả environmentcác đối tượng đều có thể bị bỏ qua - đặt thuộc ranktính là đủ (cùng với các thuộc tính bắt buộc khác) - lệnh gọi POST sẽ tự động tạo các ID và trả về trong đối tượng phản hồi. Khi định nghĩa phát hành được tạo ra, để có được tất cả các định nghĩa trong org của bạn, bạn có thể làm một LISTtrên định nghĩa giải phóng - gọi GET được ghi nhận ở đây
xáo trộn

-4

Đường ống được thực hiện từ một hoặc nhiều công việc và có thể bao gồm các nguồn lực và các biến. Công việc được thực hiện từ một hoặc nhiều bước cộng với một số dữ liệu cụ thể về công việc. Các bước có thể là nhiệm vụ, tập lệnh hoặc tham chiếu đến các mẫu bên ngoài. Điều này được phản ánh trong cấu trúc của tệp YAML. Chi tiết vui lòng truy cập tại đây


5
Không thêm chữ ký vào bài viết của bạn; chúng có thể được coi là thư rác.
Zoe
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.