資料介紹
描述
這個項目搭載了我上一篇文章使用 Slack 和 Particle 創(chuàng)建 IoT 滾動選框。
我不想使用滾動字幕顯示獨(dú)特的消息,而是希望僅在持續(xù)集成平臺構(gòu)建失敗時接收通知。在此通知中有用的是,哪個分支失敗了,誰是用戶。
CircleCI是一個很棒的持續(xù)集成平臺,我在個人項目中經(jīng)常使用它,但我相信這種方法(或類似方法)適用于大多數(shù)人。
CircleCI config.yml允許您在“構(gòu)建失敗”時調(diào)用命令。這很棒,因為我們可以將 POST 請求卷曲到 API ,將我們的CIRCLE_BRANCH和CIRCLE_USERNAME傳遞給它。簡單!
我對這個項目的方法的另一個看法是我想使用Particle Mesh Networking 。本質(zhì)上,粒子網(wǎng)狀網(wǎng)絡(luò)由具有網(wǎng)絡(luò)訪問權(quán)限的網(wǎng)關(guān)設(shè)備和一個/多個端點設(shè)備組成。在Particle 博客上可以找到更好的解釋。
我的示例將使用Argon WiFi 網(wǎng)關(guān)設(shè)備和 2 個Xenon端點設(shè)備。
網(wǎng)關(guān)和端點設(shè)備可以通過發(fā)布或訂閱事件來相互通信。只有此網(wǎng)絡(luò)上的設(shè)備才能訪問這些事件。
知道這一點,我們可以在我們的網(wǎng)關(guān)設(shè)備 (Argon) display_broken_build上定義一個函數(shù),當(dāng) API 調(diào)用它時,它可以在我們的網(wǎng)絡(luò)matrix_display_message上發(fā)出一個自定義事件。我們的端點將訂閱事件matrix_display_message ,然后可以執(zhí)行特定操作。
我的計劃是讓 1 個 Xenon 端點運(yùn)行滾動選框,而另一個 Xenon 端點顯示損壞構(gòu)建的數(shù)量。這表明在工作環(huán)境中,我們可以在我們的網(wǎng)絡(luò)上使用多個設(shè)備來顯示構(gòu)建失敗的通知以及可能更詳細(xì)的統(tǒng)計信息。
圈子CI
首先,我們需要一個會失敗的構(gòu)建。創(chuàng)建一個 git repo 并創(chuàng)建一個.circleci/config.yml文件。(參見示例)確保您隨后在 CircleCI 應(yīng)用程序中選擇了您的 git 存儲庫。同時在您的新存儲庫中創(chuàng)建一個package.json文件。
此清單將沒有依賴項或腳本。(見例子)
my-failing-repo
| - .circleci/config.yml
| - package.json
將此推送到 github 并導(dǎo)致 CircleCI 構(gòu)建您的項目。
首先它會安裝 npm 依賴項,然后是npm foo,它不應(yīng)該存在于你的package.json文件中,導(dǎo)致構(gòu)建失敗。
應(yīng)用程序接口
我創(chuàng)建了一個 expressJS API (index.js) 和一個路由 /display。
在/api/display上,API 將登錄到我的設(shè)備并調(diào)用它的display_broken_build函數(shù),將分支和用戶值傳遞給它。
API 引用存儲在 local.env 文件中的環(huán)境變量。
PDEVICE=particle_device_id
PUSER=particle_user
PPASS=particle_password
API 然后托管在now上,我的now.json清單向 API 公開了我的路由和秘密。
您可以像這樣向現(xiàn)在的部署提供您的秘密:
now secret add mesh-pub-user foo@bar.com
部署 API 后,更新對.circleci/config.yml文件中端點的引用。
氬氣(網(wǎng)關(guān))
我正在使用 Argon 作為我的網(wǎng)關(guān)設(shè)備。
使用 Particles 的 Workbench,我在我的設(shè)備上刷新了argon-publish.ino 。
您會注意到在設(shè)置時我定義了接受命令(字符串)的函數(shù)display_broken_build ,并且在通過 API 調(diào)用該函數(shù)的事件中,我調(diào)用了displayMessage函數(shù),該函數(shù)隨后會將 matrix_display_message發(fā)送到網(wǎng)絡(luò)上。
Xenon - 滾動字幕(端點)
此設(shè)備的代碼 ( xenon-subscribe-scrolling-marquee.ino ) 與我原來的滾動字幕示例非常相似。
不同之處在于,此設(shè)備在設(shè)置時訂閱了matrix_display_message事件。收到后,調(diào)用displayMessage,從而寫入 LCD。
Mesh.subscribe("matrix_display_message", displayMessage);
Xenon - 計數(shù)器(端點)
該設(shè)備的代碼 ( xenon-subscribe-counter.ino ) 非常簡單。
我將計數(shù)初始化為0,每次發(fā)布matrix_display_message時它都會調(diào)用logToDisplay ,將計數(shù)遞增 1 并將其發(fā)送到 LCD 顯示器。
結(jié)論
一旦部署了 API,設(shè)備閃爍,并發(fā)布了失敗的 CircleCI 存儲庫,我就有了自己的可愛的物聯(lián)網(wǎng)顯示網(wǎng)絡(luò),在構(gòu)建失敗時通知我。
?
?
- 粒子動力機(jī)械臂開源構(gòu)建
- 使用麥克納姆輪子構(gòu)建和控制全向汽車的過程
- 如何創(chuàng)建和使用LabVIEW中的LLB文件 0次下載
- 基于量子耗散粒子群算法的評估模型構(gòu)建 3次下載
- 基于最優(yōu)子網(wǎng)的虛擬網(wǎng)絡(luò)映射算法 5次下載
- 基于定點壓縮技術(shù)的雙層粒子網(wǎng)格算法 14次下載
- 一種融入社會影響力的粒子群優(yōu)化算法 10次下載
- 如何結(jié)合粒子群尋優(yōu)與遺傳重采樣實現(xiàn)RBPF算法 2次下載
- 如何使用記憶庫粒子群算法進(jìn)行海上協(xié)作搜尋計劃制定概述 3次下載
- 如何使用室內(nèi)環(huán)境約束的行人航向粒子濾波算法進(jìn)行修正方向誤差 9次下載
- 綠色能源是什么?WiFi“網(wǎng)格化”是什么?有什么作用
- 《單片機(jī)原理及應(yīng)用》課程設(shè)計的構(gòu)建與實踐
- 離子推力器羽流特性的粒子模擬
- 制造網(wǎng)格的工作流管理研究
- 本地站點網(wǎng)格作業(yè)監(jiān)控模塊的設(shè)計和實現(xiàn)
- 不同尺度子網(wǎng)絡(luò)的模塊化神經(jīng)網(wǎng)絡(luò)同步轉(zhuǎn)換 389次閱讀
- 如何從線性網(wǎng)格創(chuàng)建高階網(wǎng)格 467次閱讀
- 什么是網(wǎng)格劃分或網(wǎng)格生成? 2963次閱讀
- 西門子支持S7子網(wǎng)路由功能的模塊有哪些? 1046次閱讀
- 精度、收斂性和網(wǎng)格質(zhì)量 2368次閱讀
- 面向智能家居應(yīng)用的藍(lán)牙網(wǎng)格技術(shù) 2886次閱讀
- 塵埃粒子計數(shù)器使用說明 8024次閱讀
- Zedboard HDMI核的構(gòu)建和輸出顯示測試 6393次閱讀
- 子網(wǎng)掩碼怎么計算 4.5w次閱讀
- 子網(wǎng)掩碼在哪里看_子網(wǎng)掩碼怎么設(shè)置 4.4w次閱讀
- 子網(wǎng)掩碼與子網(wǎng)劃分講解 1w次閱讀
- 子網(wǎng)掩碼是什么_子網(wǎng)掩碼怎么理解 11.3w次閱讀
- 已知ip地址求子網(wǎng)掩碼_已知ip地址和子網(wǎng)掩碼求網(wǎng)絡(luò)號、子網(wǎng)號和主機(jī)號 11.1w次閱讀
- 子網(wǎng)掩碼計算方法_實例計算子網(wǎng)掩碼_子網(wǎng)劃分教程 12.4w次閱讀
- 子網(wǎng)掩碼的作用_子網(wǎng)掩碼計算_子網(wǎng)掩碼和ip地址的關(guān)系 1.9w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評論
查看更多