diff --git a/.github/workflows/i18n.yml b/.github/workflows/i18n.yml new file mode 100644 index 00000000..667cb96f --- /dev/null +++ b/.github/workflows/i18n.yml @@ -0,0 +1,67 @@ +name: i18n + +on: + push: + branches: + - main + +jobs: + i18n: + runs-on: ubuntu-latest + steps: + - run: echo "${{ github.actor }}" + + - uses: actions/checkout@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + - run: | + git config user.name github-actions + git config user.email github-actions@github.com + + - name: "Library: Clone translations" + uses: actions/checkout@v3 + with: + repository: vivid-planet/comet-lang + token: ${{ secrets.VIVID_PLANET_BOT_TOKEN }} + path: "demo/admin/lang/comet-lang" + + - name: "Demo: Clone translations" + uses: actions/checkout@v3 + with: + repository: vivid-planet/comet-demo-lang + token: ${{ secrets.VIVID_PLANET_BOT_TOKEN }} + path: "demo/admin/lang/comet-demo-lang" + + - uses: pnpm/action-setup@v2 + with: + version: 8 + + - name: Use Node.js 18.x + uses: actions/setup-node@v3 + with: + node-version: 18 + registry-url: "https://registry.npmjs.org" + cache: "pnpm" # https://github.com/actions/setup-node/blob/main/docs/advanced-usage.md#caching-packages-dependencies + + - run: pnpm install --frozen-lockfile + + - name: "Library: Extract i18n strings" + run: | + pnpm run intl:extract + cp -r lang/* demo/admin/lang/comet-lang/ + + - name: "Library: Update translateable strings" + uses: EndBug/add-and-commit@v9 + with: + cwd: "./demo/admin/lang/comet-lang" + + - name: "Demo: Extract i18n strings" + run: | + cd demo/admin + pnpm run intl:extract + cp -r lang-extracted/* lang/comet-demo-lang + + - name: "Demo: Update translateable strings" + uses: EndBug/add-and-commit@v9 + with: + cwd: "./demo/admin/lang/comet-demo-lang" \ No newline at end of file diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 00000000..253812d1 --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,69 @@ +name: Lint + +on: + pull_request: + types: + - opened + - synchronize + - reopened + push: + branches: + - main + - next + +jobs: + lint: + name: Lint + runs-on: ubuntu-latest + steps: + - run: echo "${{ github.actor }}" + + - uses: actions/checkout@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + - run: | + git config user.name github-actions + git config user.email github-actions@github.com + + - name: "Clone translations" + uses: actions/checkout@v3 + with: + repository: vivid-planet/comet-brevo-module-lang + token: ${{ secrets.GITHUB_TOKEN }} + path: "demo/admin/lang/comet-brevo-module-lang" + + - uses: pnpm/action-setup@v2 + with: + version: 8 + + - name: Use Node.js 18.x + uses: actions/setup-node@v3 + with: + node-version: 18 + registry-url: "https://registry.npmjs.org" + cache: "pnpm" # https://github.com/actions/setup-node/blob/main/docs/advanced-usage.md#caching-packages-dependencies + + - run: pnpm install --frozen-lockfile + + - name: Copy schema files + run: pnpm run copy-schema-files + + - name: Build + run: pnpm run build:lib + + - name: Lint + run: | + pnpm exec prettier --check "./*.{js,json,md,yml}" + pnpm run lint + # check for duplicate ids of formatted messages + pnpm run intl:extract + + - name: Test + run: pnpm run test + + - name: Upload test results + uses: actions/upload-artifact@v3 + if: success() || failure() + with: + name: test-results + path: packages/**/junit.xml \ No newline at end of file