diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..aada95f --- /dev/null +++ b/.editorconfig @@ -0,0 +1,9 @@ +root = true + +[*] +charset = utf-8 +insert_final_newline = true +end_of_line = lf +indent_style = space +indent_size = 2 +max_line_length = 80 diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 0000000..fd77750 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,27 @@ +name: CI + +on: + pull_request: + merge_group: + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + prettier: + runs-on: ubuntu-24.04 + steps: + - name: Checkout + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + + - name: Setup Node.js + uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0 + with: + node-version: 22.14.0 + cache: pnpm + + - name: Install dev dependencies + run: pnpm install --frozen-lockfile --dev + + - run: pnpm run prettier:check diff --git a/.gitignore b/.gitignore index 485dee6..7a1537b 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .idea +node_modules diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..d93a75a --- /dev/null +++ b/.npmrc @@ -0,0 +1,2 @@ +public-hoist-pattern[]=*eslint* +public-hoist-pattern[]=*prettier* diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..bd5535a --- /dev/null +++ b/.prettierignore @@ -0,0 +1 @@ +pnpm-lock.yaml diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..d3f5e1e --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,10 @@ +/** + * @see https://prettier.io/docs/configuration + * TODO migrate to TS when node lts supports it without flags + * @type {import("prettier").Config} + */ +const config = { + plugins: ["prettier-plugin-sort-json"], +}; + +export default config; diff --git a/package.json b/package.json new file mode 100644 index 0000000..75a7eb4 --- /dev/null +++ b/package.json @@ -0,0 +1,17 @@ +{ + "name": "backstage-renovate-config", + "packageManager": "pnpm@10.4.1", + "volta": { + "node": "22.14.0", + "pnpm": "10.4.1" + }, + "type": "module", + "scripts": { + "prettier:check": "prettier --check .", + "prettier:fix": "prettier --write ." + }, + "devDependencies": { + "prettier": "3.5.2", + "prettier-plugin-sort-json": "4.1.1" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..0b4f5e2 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,37 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + devDependencies: + prettier: + specifier: 3.5.2 + version: 3.5.2 + prettier-plugin-sort-json: + specifier: 4.1.1 + version: 4.1.1(prettier@3.5.2) + +packages: + + prettier-plugin-sort-json@4.1.1: + resolution: {integrity: sha512-uJ49wCzwJ/foKKV4tIPxqi4jFFvwUzw4oACMRG2dcmDhBKrxBv0L2wSKkAqHCmxKCvj0xcCZS4jO2kSJO/tRJw==} + engines: {node: '>=18.0.0'} + peerDependencies: + prettier: ^3.0.0 + + prettier@3.5.2: + resolution: {integrity: sha512-lc6npv5PH7hVqozBR7lkBNOGXV9vMwROAPlumdBkX0wTbbzPu/U1hk5yL8p2pt4Xoc+2mkT8t/sow2YrV/M5qg==} + engines: {node: '>=14'} + hasBin: true + +snapshots: + + prettier-plugin-sort-json@4.1.1(prettier@3.5.2): + dependencies: + prettier: 3.5.2 + + prettier@3.5.2: {}