diff --git a/.eslintrc.json b/.eslintrc.json index 7ce6663..f3b83a3 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -17,5 +17,5 @@ "@typescript-eslint/explicit-module-boundary-types": "off", "@typescript-eslint/no-explicit-any": "off" }, - "ignorePatterns": ["coverage", "dist", "__tests__/", "jest.config.ts", "*.yml"] + "ignorePatterns": ["coverage", "dist", "__tests__/", "jest.config.ts", "*.yml", "CHANGELOG.md", "*.md"] } diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 103a1ad..6a19a10 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,9 +20,25 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 - - run: npm ci - - run: npm run build - + + - name: Set up Node + uses: actions/setup-node@v4 + with: + node-version: '20.x' + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Build + run: npm run build + + - name: Run semantic-release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + NPM_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }} + run: npx semantic-release + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 @@ -47,18 +63,3 @@ jobs: push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} - - - name: Set up Node - uses: actions/setup-node@v4 - with: - node-version: '20.x' - cache: 'npm' - - - name: Install dependencies - run: npm ci - - - name: Run semantic-release - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NPM_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }} - run: npx semantic-release diff --git a/.releaserc b/.releaserc index fd7f56b..3aad5e9 100644 --- a/.releaserc +++ b/.releaserc @@ -3,7 +3,49 @@ "main" ], "plugins": [ - "@semantic-release/commit-analyzer", + [ + "@semantic-release/commit-analyzer", + { + "preset": "angular", + "releaseRules": [ + { + "type": "docs", + "scope": "README", + "release": "patch" + }, + { + "type": "refactor", + "release": "patch" + }, + { + "type": "style", + "release": "patch" + }, + { + "type": "fix", + "release": "patch" + }, + { + "type": "feat", + "release": "minor" + }, + { + "type": "perf", + "release": "patch" + }, + { + "breaking": true, + "release": "major" + } + ], + "parserOpts": { + "noteKeywords": [ + "BREAKING CHANGE", + "BREAKING CHANGES" + ] + } + } + ], "@semantic-release/release-notes-generator", [ "@semantic-release/changelog", diff --git a/src/repositories/index.ts b/src/repositories/index.ts index 7791569..463e79d 100644 --- a/src/repositories/index.ts +++ b/src/repositories/index.ts @@ -1,16 +1,17 @@ +import { announcementRepository } from './announcement.repository'; import { BaseRepository } from './base.repository'; -import { userRepository } from './user.repository'; -import { tokenRepository } from './token.repository'; -import { makeHeatMapRepository } from './heatMap.repository'; -import { makeRawInfoRepository } from './rawInfo.repository'; -import { makeMemberActivityRepository } from './memberActivity.repository'; -import { makeGuildMemberRepository } from './guildMember.repository'; import { makeChannelRepository } from './channel.repository'; -import { makeRoleRepository } from './role.repository'; import { communityRepository } from './community.repository'; -import { platformRepository } from './platform.repository'; -import { announcementRepository } from './announcement.repository'; +import { makeGuildMemberRepository } from './guildMember.repository'; +import { makeHeatMapRepository } from './heatMap.repository'; +import { makeMemberActivityRepository } from './memberActivity.repository'; import { moduleRepository } from './module.repository'; +import { platformRepository } from './platform.repository'; +import { makeRawInfoRepository } from './rawInfo.repository'; +import { makeRoleRepository } from './role.repository'; +import { makeThreadRepository } from './thread.repository'; +import { tokenRepository } from './token.repository'; +import { userRepository } from './user.repository'; export { BaseRepository, @@ -26,4 +27,5 @@ export { platformRepository, announcementRepository, moduleRepository, + makeThreadRepository, };