[發明專利]一種基于YAML模板的目標服務代碼生成方法及裝置有效
| 申請號: | 202010879404.8 | 申請日: | 2020-08-27 |
| 公開(公告)號: | CN112083919B | 公開(公告)日: | 2023-09-29 |
| 發明(設計)人: | 陳啟明;李芳;張馳榮 | 申請(專利權)人: | 遠光軟件股份有限公司 |
| 主分類號: | G06F8/34 | 分類號: | G06F8/34;G06F8/41;G06F16/31;G06F40/186;G06F8/33 |
| 代理公司: | 北京天達知識產權代理事務所有限公司 11386 | 代理人: | 侯永帥 |
| 地址: | 519085 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 yaml 模板 目標 服務 代碼 生成 方法 裝置 | ||
本發明涉及一種基于YAML模板的目標服務代碼生成方法及裝置,屬于計算機軟件應用開發技術領域,解決了現有的YAML模板編寫困難且錯誤排查不易造成的目標服務編排效率較低的問題。方法包括:將包含目標服務編排要素的YAML模板加載至編輯器,編輯器包括設計視圖單元和代碼視圖單元;基于設計視圖單元獲取編排要素對應的目標服務運行參數,并將目標服務運行參數保存至數據庫;代碼視圖單元基于YAML模板生成目標服務對應的腳本框架,并從數據庫獲取腳本框架中編排要素對應的目標服務運行參數,得到目標服務的程序代碼。實現了YAML模板的快速編寫,提高了目標服務的編排效率。
技術領域
本發明涉及計算機軟件應用開發技術領域,尤其涉及一種基于YAML模板的目標服務代碼生成方法及裝置。
背景技術
Kubernetes是Google開源的容器編排調度引擎,它提供一個規范、可以用來描述集群的架構,定義服務的最終狀態,kubernetes可以將系統自動維持在這個狀態。可見kubernetes的service天生就適合微服務。Kubernetes的開發人員可以通過編寫YAML模板并對YAML模板進行直接編輯,以實現目標服務的編排,但YAML是用于表達數據序列化的格式,由于數據格式使用遞歸縮進,導致模板編寫困難、格式出現錯誤排查不易,同時,YAML模板對于非技術人員不友好,在沒有培訓的情況下,無法直接上手。
發明內容
鑒于上述的分析,本發明實施例旨在提供一種基于YAML模板的目標服務代碼生成方法及裝置,用以解決現有的YAML模板編寫困難且錯誤排查不易造成的目標服務編排效率較低的問題。
一方面,本發明實施例提供了一種基于YAML模板的目標服務代碼生成方法,包括如下步驟:
將包含目標服務編排要素的YAML模板加載至編輯器,所述編輯器包括設計視圖單元和代碼視圖單元;
基于所述設計視圖單元獲取編排要素對應的目標服務運行參數,并將所述目標服務運行參數保存至數據庫;
所述代碼視圖單元基于YAML模板生成目標服務對應的腳本框架,并從數據庫獲取對應所述腳本框架中編排要素的目標服務運行參數,得到目標服務的程序代碼,所述目標服務的程序代碼即為目標服務對應應用程序的模板代碼。
進一步,基于所述設計視圖單元獲取編排要素對應的目標服務運行參數,包括如下步驟:
獲取所述YAML模板中的編排要素,所述編排要素包括端口名稱、系統名稱及啟動參數;
基于所述編排要素動態生成要素編輯框;
基于所述要素編輯框獲取編排要素對應的目標服務運行參數。
進一步,獲取所述YAML模板中的編排要素,包括下述步驟:
將加載至編輯器中YAML模板的編排要素存儲至數據庫;
基于設計視圖單元新增獲得存儲至數據庫中的所述YAML模板中的編排要素。
進一步,所述代碼視圖單元還通過調用Monaco插件實現腳本框架的語法檢查及智能語法提示;其中,基于調用所述Monaco插件實現腳本框架的語法檢查,包括下述步驟:
獲取所述腳本框架中代碼縮進類型,所述代碼縮進類型包括空格縮進和tab縮進;
若所述代碼縮進類型為空格縮進,則語法正確,若所述代碼縮進類型為tab縮進,則語法錯誤。
進一步,基于所述Monaco插件實現腳本框架的智能語法提示,包括下述步驟:
基于Monaco插件中的格式檢查規則對所述腳本框架進行格式檢查,得到存在格式錯誤的程序代碼對應的格式錯誤說明;
標記所述存在格式錯誤的程序代碼;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于遠光軟件股份有限公司,未經遠光軟件股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010879404.8/2.html,轉載請聲明來源鉆瓜專利網。





