ref: https://blog.argoproj.io/argo-workflows-2021-survey-results-d6fa890030ee
這篇是由 Argo 官方所發表的統計文章,該文章主要是探討 Argo Workflows 的使用,總共有效的問券有 60 份
你是誰
1. 32% DevOps Engineer
2. 26% Software Engineer
3. 15% Architect
4. 9% Data Engineer
使用案例(前六大項)
1. Infrastructure Automation
2. Data Processing
3. CI/CD
4. Batch Processing
5. Machine Learning
6. ETL
由於問券內容中大部分都是 DevOps 相關職缺,所以答案會偏向 Infrastructure, CI/CD 也是不太意外。
最受歡迎的功能(按照名次排序)
1. Workflow Template
2. CronWorkflows
3. API
4. Prometheus Metrics
5. Workflow Archive
6. Golang/Java/Python Clients
7. SSO
8. WebHooks
9. Workflow Reports
10. Node Offloading
11. Memoization
12. Semaphores/Mutexes
Argo 官方對於這個評比是有點經驗,本以為會更多人使用(6)與(12),不過這些功能實際上的釋出也是相對新。
規模
1. 大部分的使用者一天會運行 10~100 個左右的 workflows
2. 有三個使用者每天會運行 1000 個以上的 workflows
3. 大部分使用者每個 workflow 運行的 pod 數量範圍為 10~100
4. 有兩個使用者每個 workflow 運行的 pod 數量超過 10,000
導入生產環境的困境
1. 有七個人表示習慣使用 Python,所以使用 YAML 語法相對困難
2. 有三個人表示需要去熟悉 Cloud-native/Container 的相關用法與概念
為什麼使用 Argo Workflows
1. 28 個人表示因為其是 Cloud Native/Kubernetes 相關專案
2. 有六個人表示 Argo Workflow 是目前最好用的 workflow 專案
3. 有五個人表示輕量與容易上手
4. 有五個人表示與 Argo CD 可以輕鬆整合無煩惱
對 Argo Workflow 有興趣的人可以參考這個專案,其還可以組合出符合 DGA 拓墣的關係圖,讓你的 job 組合變化多端
「yaml python」的推薦目錄:
- 關於yaml python 在 矽谷牛的耕田筆記 Facebook 的最讚貼文
- 關於yaml python 在 矽谷牛的耕田筆記 Facebook 的最佳貼文
- 關於yaml python 在 軟體開發學習資訊分享 Facebook 的最讚貼文
- 關於yaml python 在 Python 寫入yaml 檔案 的評價
- 關於yaml python 在 adobe/himl: A hierarchical yaml config in Python - GitHub 的評價
- 關於yaml python 在 Parsing a YAML file in Python, and accessing the data? 的評價
- 關於yaml python 在 YAML: code execution using !!python/object - YouTube 的評價
yaml python 在 矽谷牛的耕田筆記 Facebook 的最佳貼文
今天這篇文章探討的是 Git 的 pre-commit hook 系統,透過這種 pre-commit 的系統,能夠幫助開發者與本地開發時,先行進行一些處理,避免什麼問題都要丟到遠方的 CI/CD pipeline 去檢查。畢竟程式碼更新,觸發 CI/CD 流程,等待結果告知,這部分有時候都要花上數分鐘,往往就是檢查到一個格式錯誤,譬如拼字錯誤,多一個空白,格式錯誤等。
如果今天可以將一些常用的檢查給複製一份到本地端去執行,這樣開發者可以更快地找出錯誤,同時也可以節省很多等待的時間,因此本篇文章就要針對 git pre-commit hook 來介紹。
本篇文章要介紹的並不是直接使用 git 的 pre-commit hook,而是要使用 python 的套件 git pre-commit hook,其龐大的生態系可以幫助使用者輕鬆的使用常見的 yaml 格式來管理 git 本身的 pre-commit hook。舉例來說,可以於專案底下放置一個有下列內容的檔案
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.2.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-yaml
- id: check-added-large-files
透過 python 的 pre-commit hook 系統,會將其中描述的四個功能 (trailing-whitespace....check-added-large-files)實際的程式碼給轉換並且安裝到 .git/hooks/pre-commit 底下。
同時透過這種框架,開發者也可以自行開發屬於自己的 pre-commit hook並整合到該 yaml 檔案之中。整個使用的方式非常簡單
1. 透過 python 的方式安裝 git pre-commit
2. 準備一個名為 .pre-commit-config.yaml 的檔案,並且描述你希望使用的 hook
3. 透過 pre-commit install 的方式將該 yaml 的內容轉換為真正 git 所使用的內容
4. 可以開始透過 git commit 來幫助你進行本地檢查囉
如果對於提升本地開發效率有興趣的人,不要錯過研究看看 git pre-commit 這種機制,不論是直接撰寫 git 或是透過這種 python 的 git pre-commit 框架,只要能夠幫忙解決相關問題,提升效率就會是一個值得研究的方法。
更多的 hook 參考以及該框架介紹,請點選下列全文來觀賞囉
https://towardsdatascience.com/pre-commit-hooks-you-must-know-ff247f5feb7e
yaml python 在 軟體開發學習資訊分享 Facebook 的最讚貼文
今日內容摘要
✅ 開源的行銷自動化工具
✅ 開源的團隊聊天伺服器
✅ 一個 JavaScript/HTML5資料網格,具有試算表的外觀。支援 React、 Vue 和 Angular
✅ 實現了一個 HTTP Live Streaming 客戶端 Javascript 程式庫
✅ 使用 Vanilla javascript 開發的幻燈片
✅ 超強的 Laravel Excel 套件 – 匯入和匯出
✅ 一個 Laravel 套件幫助你瘋狂地生成幾乎完整的 CRUD 頁面
✅ 一個用 Python 和 Flask 編寫的微部落格網頁應用程式
✅ 一套以人工智慧為中心的 JupyterLab Notebooks 擴充套件
✅ 在 PyTorch 中快速、模組化地實現實例分割和目標檢測分割演算法
✅ 一個可以將你的機器學習模型大規模地部署到 Kubernetes 上的開源平台
✅ 客製化 kubernetes 多用途的 YAML 配置管理
✅ Elasticsearch & Logstash 的輕量級傳輸器
✅ 仿製一個 SnapChat
✅ 用於與 OAuth 2.0和 OpenID Connect 提供者通訊的 Android 客戶端 SDK
✅ 使用 .Net Core 3.1 ,C# 8 和 React + Redux 等技術的乾淨架構範例
https://softnshare.com/opensource-news-170/
yaml python 在 adobe/himl: A hierarchical yaml config in Python - GitHub 的推薦與評價
A python module which allows you to merge hierarchical config files using YAML syntax. It offers deep merge, variable interpolation and secrets retrieval ... ... <看更多>
yaml python 在 Python 寫入yaml 檔案 的推薦與評價
本篇介紹如何用Python 寫入yaml 檔案,yaml 檔案格式是常用設定檔格式,以下將示範如何用python 搭配yaml 套件的yaml.dump() 來寫入yaml 檔案。 ... <看更多>