diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml new file mode 100644 index 0000000..a49e58f --- /dev/null +++ b/.github/workflows/pull_request.yml @@ -0,0 +1,25 @@ +name: Build and test for the pull request + +on: + pull_request: + types: [opened, synchronize] + +jobs: + build: + name: Build and test + runs-on: ubuntu-latest + if: "!contains(github.event.head_commit.message, '[ci skip]')" + steps: + - name: Checkout sources + uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: 17 + cache: 'maven' + + - name: Build with Maven + run: mvn -B package + diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..cf9d277 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,42 @@ +name: Release CI + +on: + push: + branches: + - master + +jobs: + build: + name: Build and release + runs-on: ubuntu-latest + if: "!contains(github.event.head_commit.message, '[ci skip]')" + steps: + - name: Checkout sources + uses: actions/checkout@v4 + with: + # Disabling shallow clone is needed for correctly determing next release with semantic release + fetch-depth: 0 + persist-credentials: false + + - name: Set up JDK + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: 17 + cache: 'maven' + + - name: Test + run: mvn -B test + + - name: Semantic release + id: semantic + uses: cycjimmy/semantic-release-action@v4 + with: + semantic_version: 23 + extra_plugins: | + @semantic-release/changelog@6 + @terrestris/maven-semantic-release@2 + @semantic-release/git@10 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..5ddd176 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,13 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Rider ignored files +/.idea.keycloak-discord.iml +/modules.xml +/contentModel.xml +/projectSettingsUpdater.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/indexLayout.xml b/.idea/indexLayout.xml new file mode 100644 index 0000000..7b08163 --- /dev/null +++ b/.idea/indexLayout.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.releaserc b/.releaserc index 076bdce..b58cdd4 100644 --- a/.releaserc +++ b/.releaserc @@ -1,13 +1,36 @@ { + "branches": [ + "master" + ], "plugins": [ "@semantic-release/commit-analyzer", "@semantic-release/release-notes-generator", - "@conveyal/maven-semantic-release", - ["@semantic-release/github", { - "assets": [ - {"path": "ear/target/*.ear"} - ] - }] + "@semantic-release/changelog", + [ + "@terrestris/maven-semantic-release", + { + "mavenTarget": "deploy", + "clean": false, + "updateSnapshotVersion": true, + "settingsPath": "/home/runner/.m2/settings.xml", + "processAllModules": true + } + ], + [ + "@semantic-release/git", + { + "assets": [ + "CHANGELOG.md", "pom.xml", "**/pom.xml" + ], + "message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}" + } + ], + [ + "@semantic-release/github", + { + "successComment": false, + "failTitle": false + } + ] ] } - diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..3d11611 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,19 @@ +## [0.6.1](https://github.com/wadahiro/keycloak-discord/compare/v0.6.0...v0.6.1) (2024-11-02) + + +### Bug Fixes + +* eliminate the possibility of NullPointerException ([#56](https://github.com/wadahiro/keycloak-discord/issues/56)) ([e2b5991](https://github.com/wadahiro/keycloak-discord/commit/e2b5991c7ef33ee3ac6483ca00e3e854bb935371)) + +# [0.6.0](https://github.com/wadahiro/keycloak-discord/compare/v0.5.0...v0.6.0) (2024-11-02) + + +### Bug Fixes + +* ignore discriminator if the value is "0" ([4c68b69](https://github.com/wadahiro/keycloak-discord/commit/4c68b69b0bf0d6421589e03e4baf8bbbe5138caa)) + + +### Features + +* update to keycloak 26.0.5 ([05a3df4](https://github.com/wadahiro/keycloak-discord/commit/05a3df43f21289762f72e3ac6780fd6b543d8c07)) +* updated provider for Keycloak 25.x ([#49](https://github.com/wadahiro/keycloak-discord/issues/49)) ([c10480b](https://github.com/wadahiro/keycloak-discord/commit/c10480b79864a85817d20d48f949475020322090)) diff --git a/pom.xml b/pom.xml index 05b1ee7..6aed171 100755 --- a/pom.xml +++ b/pom.xml @@ -7,11 +7,11 @@ org.keycloak.extensions keycloak-discord - 0.5.3 + 0.6.2-SNAPSHOT jar - 25.0.0 + 26.0.5 @@ -48,8 +48,15 @@ maven-compiler-plugin 3.11.0 - 21 - 21 + 17 + 17 + + + + maven-deploy-plugin + 3.1.3 + + true diff --git a/src/main/java/org/keycloak/social/discord/DiscordIdentityProvider.java b/src/main/java/org/keycloak/social/discord/DiscordIdentityProvider.java index cc2423e..a82a232 100755 --- a/src/main/java/org/keycloak/social/discord/DiscordIdentityProvider.java +++ b/src/main/java/org/keycloak/social/discord/DiscordIdentityProvider.java @@ -77,12 +77,11 @@ public class DiscordIdentityProvider extends AbstractOAuth2IdentityProviderHiroyuki Wada */ diff --git a/src/main/java/org/keycloak/social/discord/DiscordIdentityProviderFactory.java b/src/main/java/org/keycloak/social/discord/DiscordIdentityProviderFactory.java index 594909f..c25ca5e 100755 --- a/src/main/java/org/keycloak/social/discord/DiscordIdentityProviderFactory.java +++ b/src/main/java/org/keycloak/social/discord/DiscordIdentityProviderFactory.java @@ -1,4 +1,3 @@ - /* * Copyright 2018 Red Hat, Inc. and/or its affiliates * and other contributors as indicated by the @author tags. @@ -78,4 +77,4 @@ public class DiscordIdentityProviderFactory extends AbstractIdentityProviderFact public String getId() { return PROVIDER_ID; } -} +} \ No newline at end of file diff --git a/src/main/java/org/keycloak/social/discord/DiscordUserAttributeMapper.java b/src/main/java/org/keycloak/social/discord/DiscordUserAttributeMapper.java index 2fc3cfc..12e4fdc 100644 --- a/src/main/java/org/keycloak/social/discord/DiscordUserAttributeMapper.java +++ b/src/main/java/org/keycloak/social/discord/DiscordUserAttributeMapper.java @@ -21,21 +21,21 @@ import org.keycloak.broker.oidc.mappers.AbstractJsonUserAttributeMapper; /** * User attribute mapper. - * + * * @author dannyAAM */ public class DiscordUserAttributeMapper extends AbstractJsonUserAttributeMapper { - private static final String[] cp = new String[] { DiscordIdentityProviderFactory.PROVIDER_ID }; + private static final String[] cp = new String[]{DiscordIdentityProviderFactory.PROVIDER_ID}; - @Override - public String[] getCompatibleProviders() { - return cp; - } + @Override + public String[] getCompatibleProviders() { + return cp; + } - @Override - public String getId() { - return "discord-user-attribute-mapper"; - } + @Override + public String getId() { + return "discord-user-attribute-mapper"; + } }