Menggunakan skema JSON Workflows di IDE Anda

Untuk memberikan dukungan sintaksis saat membuat alur kerja, Anda dapat menggunakan skema JSON Alur Kerja di lingkungan pengembangan terintegrasi (IDE) seperti Visual Studio Code (VS Code) atau Intellij IDEA. Dukungan sintaksis mencakup pelengkapan otomatis, validasi, dan dokumentasi inline. Skema juga dapat diintegrasikan ke dalam proses CI/CD Anda.

Skema JSON Alur Kerja ditulis dalam JSON Schema, bahasa deklaratif yang memungkinkan Anda menganotasi dan memvalidasi dokumen JSON. Sumber skema dihosting di SchemaStore.org, repositori skema untuk file konfigurasi berbasis JSON umum. Perhatikan bahwa skema dari SchemaStore.org juga dapat diterapkan ke file YAML.

Bergantung pada IDE atau editor yang ingin Anda gunakan, Anda dapat menginstal plugin atau menerapkan dukungan bawaan untuk menggunakan skema Alur Kerja. Skema dapat disimpan secara lokal di root project Anda atau dapat ditentukan melalui URL resource-nya di SchemaStore.org.

Format nama file untuk file definisi alur kerja

Terlepas dari IDE atau editor yang Anda gunakan, jika Anda menggunakan plugin atau ekstensi untuk menerapkan skema Alur Kerja secara otomatis dari SchemaStore.org, format nama file untuk file definisi alur kerja Anda harus sebagai berikut:

  • workflows.json
  • workflows.yaml
  • workflows.yml
  • *.workflows.json
  • *.workflows.yaml
  • *.workflows.yml

Jika menggunakan VS Code, atau jika menggunakan dukungan bawaan untuk menerapkan skema Alur Kerja, Anda dapat mengganti format nama file.

Batasan

Dukungan sintaksis melalui skema JSON Alur Kerja berfokus pada pelengkapan otomatis kata kunci yang menentukan alur kerja. Skema mendukung pelengkapan otomatis untuk beberapa fungsi library standar, tetapi dukungan terbatas untuk nama variabel dinamis, ekspresi, dan bantuan ekspresi lainnya. Skema ini juga mengasumsikan bahwa alur kerja sudah selesai dan tidak memperhitungkan pascapemrosesan apa pun seperti penggabungan subalur kerja.

Untuk menghindari konflik skema JSON, sebaiknya jangan gunakan lebih dari satu ekstensi atau plugin untuk dukungan sintaksis Alur Kerja.

Mengaitkan skema JSON Alur Kerja di VS Code

VS Code adalah editor kode sumber yang berjalan di desktop Anda dan tersedia untuk Windows, macOS, dan Linux. Library ini dilengkapi dengan dukungan bawaan untuk beberapa bahasa dan mendukung ekstensi untuk bahasa dan runtime lainnya. Untuk menginstal dan menyiapkan VS Code di komputer Anda, lihat Visual Studio Code.

Berikut adalah berbagai cara untuk mengaitkan skema JSON Alur Kerja di VS Code.

Menggunakan Cloud Code untuk membuat alur kerja dalam YAML

Cloud Code adalah serangkaian plugin IDE yang mempermudah pembuatan, deployment, dan integrasi aplikasi dengan Google Cloud.

Jika menggunakan VS Code sebagai IDE, Anda dapat menggunakan Cloud Code saat menulis alur kerja YAML dan kode tersebut akan otomatis mengambil skema JSON Alur Kerja dari SchemaStore.org. Untuk mengonfirmasi bahwa skema diterapkan seperti yang diharapkan, buat alur kerja YAML di ruang kerja atau folder VS Code, dan konfirmasi bahwa pelengkapan otomatis terjadi untuk kata kunci Alur Kerja.

Cloud Code juga mendukung skema Google Cloud offline, dan dapat digunakan oleh pengguna yang mungkin memiliki batasan jaringan atau IDE. Untuk informasi selengkapnya, lihat referensi berikut:

Menggunakan YAML oleh RedHat untuk membuat alur kerja dalam YAML

Sebagai alternatif untuk menggunakan ekstensi Cloud Code untuk VS Code, Anda dapat menggunakan ekstensi YAML oleh RedHat. Ekstensi ini menyediakan dukungan bahasa YAML dan menyertakan dukungan sintaksis Kubernetes bawaan. Alat ini otomatis mengambil skema JSON Alur Kerja dari SchemaStore.org.

Setelah menginstal ekstensi, buat alur kerja YAML. Di bagian atas file, harus ada link file konfigurasi Google Cloud Workflows (workflows.json). Jika Anda mengklik link, skema JSON Alur Kerja akan terbuka di editor VS Code.

Mengganti format nama file

Saat menggunakan Cloud Code atau YAML oleh RedHat untuk membuat alur kerja dalam YAML, Anda dapat mengganti format nama file default yang digunakan untuk menerapkan skema Alur Kerja. Anda harus menentukan pemetaan dalam file settings.json. Setelan ditulis sebagai JSON dan Anda dapat meninjau serta mengedit file ini langsung dengan membukanya di editor VS Code.

Misalnya, jika menggunakan ekstensi Cloud Code for VS Code, Anda dapat memetakan format nama file di bagian properti cloudcode.yaml.schemas:

{
    "cloudcode.yaml.schemas": {
        "https://json.schemastore.org/workflows.json": [
            "GLOB_PATTERN.yaml",
            "my-special-workflow.yaml"
        ]
    }
}

Atau, jika Anda menggunakan ekstensi YAML oleh RedHat, petakan format nama file di bagian properti yaml.schemas:

{
    "yaml.schemas": {
        "https://json.schemastore.org/workflows.json": [
            "GLOB_PATTERN.yaml",
            "my-special-workflow.yaml"
        ]
    }
}

Skema di sebelah kiri diterapkan ke pola glob di sebelah kanan; setiap skema dikaitkan dengan beberapa glob menggunakan array JSON. Skema Anda harus berupa jalur relatif, bukan jalur absolut. Skema Anda dapat bersifat lokal atau online.

Menggunakan dukungan bawaan untuk membuat alur kerja dalam JSON

Anda dapat menggunakan dukungan bawaan di VS Code untuk mengaitkan skema JSON Alur Kerja dengan menentukan pemetaan dalam file settings.json, di bagian properti json.schemas. Anda dapat meninjau dan mengedit file ini secara langsung dengan membukanya di editor VS Code.

Misalnya, untuk mengambil skema JSON Alur Kerja dari SchemaStore.org:

{
    "json.schemas": [
        {
            "description": "SchemaStore.org",
            "fileMatch": [
                "workflows.json",
                "*.workflows.json"
            ],
            "url": "https://json.schemastore.org/workflows.json"
         }
    ]
}

Skema di sebelah kiri diterapkan ke pola glob di sebelah kanan; skema dikaitkan dengan beberapa glob menggunakan array JSON. Skema Anda harus berupa jalur relatif, bukan jalur absolut. Skema Anda dapat bersifat lokal atau online.

Anda dapat mengganti format nama file. Contoh:

{
    "json.schemas": [
        {
            "description": "Workflows schema",
            "fileMatch": [
                "GLOB_PATTERN.json",
                "FILE_NAME.json"
            ],
            "url": "https://json.schemastore.org/workflows.json"
        }
    ]
}

Untuk mengetahui informasi selengkapnya, lihat Mengedit JSON dengan Visual Studio Code.

Mengaitkan skema JSON Workflows di IntelliJ IDEA

IntelliJ IDEA adalah IDE lintas platform untuk bahasa Java Virtual Machine. Bahasa lainnya didukung melalui plugin. Untuk menginstal dan menyiapkan IntelliJ IDEA di komputer, lihat Menginstal IntelliJ IDEA.

Berikut adalah berbagai cara untuk mengaitkan skema JSON Workflows di IntelliJ IDEA.

Menggunakan Cloud Code untuk membuat alur kerja dalam YAML atau JSON

Cloud Code adalah serangkaian plugin IDE yang mempermudah pembuatan, deployment, dan integrasi aplikasi dengan Google Cloud.

Jika menggunakan IntelliJ sebagai IDE, Anda dapat menggunakan Cloud Code saat menulis alur kerja dalam YAML atau JSON dan kode tersebut akan otomatis mengambil skema JSON Alur Kerja dari SchemaStore.org. Cloud Code juga mendukung skema Google Cloud offline, dan dapat digunakan oleh pengguna yang mungkin memiliki batasan jaringan atau IDE. Untuk informasi selengkapnya, lihat referensi berikut:

Menggunakan dukungan bawaan untuk membuat alur kerja dalam YAML atau JSON

IntelliJ IDEA dapat otomatis mendownload dan menggunakan skema dari SchemaStore.org. Anda dapat mendownload skema JSON Workflows dan menyimpannya di root project atau menentukan URL resource sehingga IntelliJ IDEA dapat mendownload skema secara otomatis. Untuk memetakan skema, ikuti petunjuk untuk mengonfigurasi skema JSON kustom.

Secara default, download otomatis skema dari SchemaStore.org diaktifkan dan pola nama file default divalidasi terhadap skema.

Untuk mengganti pola file default, setelah membuka JSON Schema Mappings melalui dialog Settings, lakukan hal berikut:

  1. Di kolom Name, ketik Workflows schema.
  2. Di kolom Schema file or URL, ketik https://json.schemastore.org/workflows.json.
  3. Dalam daftar Versi skema, pilih JSON Schema versi 7.
  4. Tambahkan Pola jalur file pilihan Anda.

Memetakan skema melalui jsonSchema.xml

Kode sumber IntelliJ IDEA Community Edition tersedia melalui https://github.com/JetBrains/intellij-community.

Anda dapat memetakan skema JSON Alur Kerja untuk editor IntelliJ IDEA dengan menambahkan entri ke jsonSchemas.xml.

Menambahkan validasi sintaksis Alur Kerja ke proses CI/CD

Menambahkan validasi sintaksis ke proses continuous integration, delivery, dan deployment (CI/CD) membantu mengurangi error selama integrasi, pengujian, pengiriman, dan deployment.

Misalnya, Anda dapat memvalidasi data berdasarkan skema JSON Alur Kerja menggunakan alat ajv-cli. Perhatikan bahwa saat menginstal alat ini, instal juga ajv-formats. Contoh:

npm install -g ajv-cli ajv-formats

Alat lain yang mungkin berguna:

  • MegaLinter v8r—MegaLinter adalah alat open source untuk alur kerja CI/CD; v8r memeriksa validitas file JSON/YAML jika memiliki skema yang cocok yang ditentukan di SchemaStore.org.
  • Validator JSON—Alat validasi JSON yang dikategorikan menurut bahasa pemrograman atau platform pengembangan.

Langkah selanjutnya