diff --git a/.github/workflows/push_docker_image.yml b/.github/workflows/push_docker_image.yml index bd0911e71..ce5b82d87 100644 --- a/.github/workflows/push_docker_image.yml +++ b/.github/workflows/push_docker_image.yml @@ -48,28 +48,17 @@ jobs: docker run --rm --privileged multiarch/qemu-user-static \ --reset \ -p yes - - name: build-and-push-amd64 - run: | - docker build . \ - -f ${{ matrix.docker.dockerfile }}.amd64 \ - -t ${{ matrix.docker.repo }}:git-${{ github.sha }}-amd64 \ - --build-arg COMMIT=git-${{ github.sha }} \ - --build-arg TARGETPLATFORM=linux/amd64 - docker push ${{ matrix.docker.repo }}:git-${{ github.sha }}-amd64 - - name: build-and-push-arm64v8 - run: | - docker build . \ - -f ${{ matrix.docker.dockerfile }}.arm64v8 \ - -t ${{ matrix.docker.repo }}:git-${{ github.sha }}-arm64v8 \ - --build-arg COMMIT=git-${{ github.sha }} \ - --build-arg TARGETPLATFORM=linux/arm64 - docker push ${{ matrix.docker.repo }}:git-${{ github.sha }}-arm64v8 - - name: merge-manifest-and-push - run: | - docker manifest create ${{ matrix.docker.repo }}:git-${{ github.sha }} \ - --amend ${{ matrix.docker.repo }}:git-${{ github.sha }}-amd64 \ - --amend ${{ matrix.docker.repo }}:git-${{ github.sha }}-arm64v8 - docker manifest push ${{ matrix.docker.repo }}:git-${{ github.sha }} + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + with: + platforms: linux/arm/v8,linux/amd64 + - name: Build and push + uses: docker/build-push-action@v5 + with: + push: ${{ github.event_name != 'pull_request' }} + platforms: linux/arm64,linux/amd64 + tags: ${{ matrix.docker.repo }}:git-${{ github.sha }} + file: ${{ matrix.docker.dockerfile }} tag: name: tag (${{ matrix.docker.repo }}) @@ -87,7 +76,7 @@ jobs: --password '${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}' - name: push git tagged version run: | - docker pull ${{ matrix.docker.repo }}:git-${{ github.sha }}-amd64 + docker pull ${{ matrix.docker.repo }}:git-${{ github.sha }} if [[ -z "${{ github.event.inputs.imageTag }}" ]]; then export IMAGE_TAG=${{ github.ref_name }} else @@ -95,15 +84,6 @@ jobs: fi docker tag \ - ${{ matrix.docker.repo }}:git-${{ github.sha }}-amd64 \ - ${{ matrix.docker.repo }}:$IMAGE_TAG-amd64 - docker push ${{ matrix.docker.repo }}:$IMAGE_TAG-amd64 - docker pull ${{ matrix.docker.repo }}:git-${{ github.sha }}-arm64v8 - docker tag \ - ${{ matrix.docker.repo }}:git-${{ github.sha }}-arm64v8 \ - ${{ matrix.docker.repo }}:$IMAGE_TAG-arm64v8 - docker push ${{ matrix.docker.repo }}:$IMAGE_TAG-arm64v8 - docker manifest create ${{ matrix.docker.repo }}:$IMAGE_TAG \ - --amend ${{ matrix.docker.repo }}:$IMAGE_TAG-amd64 \ - --amend ${{ matrix.docker.repo }}:$IMAGE_TAG-arm64v8 - docker manifest push ${{ matrix.docker.repo }}:$IMAGE_TAG + ${{ matrix.docker.repo }}:git-${{ github.sha }} \ + ${{ matrix.docker.repo }}:$IMAGE_TAG + docker push ${{ matrix.docker.repo }}:$IMAGE_TAG diff --git a/NineChronicles.Headless.Executable/Configuration.cs b/NineChronicles.Headless.Executable/Configuration.cs index 2543b2c23..0f0d9c6f2 100644 --- a/NineChronicles.Headless.Executable/Configuration.cs +++ b/NineChronicles.Headless.Executable/Configuration.cs @@ -93,8 +93,6 @@ public class Configuration public AccessControlServiceOptions? AccessControlService { get; set; } - public int ArenaParticipantsSyncInterval { get; set; } = 1000; - public void Overwrite( string? appProtocolVersionString, string[]? trustedAppProtocolVersionSignerStrings, @@ -143,7 +141,6 @@ public void Overwrite( double? consensusTargetBlockIntervalMilliseconds, int? consensusProposeSecondBase, int? maxTransactionPerBlock, - int? arenaParticipantsSyncInterval, bool? remoteKeyValueService ) { @@ -195,7 +192,6 @@ public void Overwrite( ConsensusTargetBlockIntervalMilliseconds = consensusTargetBlockIntervalMilliseconds ?? ConsensusTargetBlockIntervalMilliseconds; ConsensusProposeSecondBase = consensusProposeSecondBase ?? ConsensusProposeSecondBase; MaxTransactionPerBlock = maxTransactionPerBlock ?? MaxTransactionPerBlock; - ArenaParticipantsSyncInterval = arenaParticipantsSyncInterval ?? ArenaParticipantsSyncInterval; RemoteKeyValueService = remoteKeyValueService ?? RemoteKeyValueService; } } diff --git a/NineChronicles.Headless.Executable/Program.cs b/NineChronicles.Headless.Executable/Program.cs index db5821b8f..fcf00694f 100644 --- a/NineChronicles.Headless.Executable/Program.cs +++ b/NineChronicles.Headless.Executable/Program.cs @@ -215,10 +215,6 @@ public async Task Run( [Option("config", new[] { 'C' }, Description = "Absolute path of \"appsettings.json\" file to provide headless configurations.")] string? configPath = "appsettings.json", - [Option(Description = "arena participants list sync interval time")] - int? arenaParticipantsSyncInterval = null, - [Option(Description = "arena participants list sync enable")] - bool arenaParticipantsSync = true, [Option(Description = "[DANGER] Turn on RemoteKeyValueService to debug.")] bool remoteKeyValueService = false, [Ignore] CancellationToken? cancellationToken = null @@ -303,7 +299,7 @@ public async Task Run( txLifeTime, messageTimeout, tipTimeout, demandBuffer, skipPreload, minimumBroadcastTarget, bucketSize, chainTipStaleBehaviorType, txQuotaPerSigner, maximumPollPeers, consensusPort, consensusPrivateKeyString, consensusSeedStrings, consensusTargetBlockIntervalMilliseconds, consensusProposeSecondBase, - maxTransactionPerBlock, arenaParticipantsSyncInterval, remoteKeyValueService + maxTransactionPerBlock, remoteKeyValueService ); // Clean-up previous temporary log files. diff --git a/NineChronicles.Headless/GraphTypes/ActionMutation.cs b/NineChronicles.Headless/GraphTypes/ActionMutation.cs index 17e9f7e66..73e08e86b 100644 --- a/NineChronicles.Headless/GraphTypes/ActionMutation.cs +++ b/NineChronicles.Headless/GraphTypes/ActionMutation.cs @@ -17,8 +17,11 @@ public class ActionMutation : ObjectGraphType { public ActionMutation(NineChroniclesNodeService service) { + DeprecationReason = "This API is insecure and must not be used."; + Field>("createAvatar", description: "Create new avatar.", + deprecationReason: DeprecationReason, arguments: new QueryArguments( new QueryArgument> { @@ -96,6 +99,7 @@ public ActionMutation(NineChroniclesNodeService service) Field>("hackAndSlash", description: "Start stage to get material.", + deprecationReason: DeprecationReason, arguments: new QueryArguments( new QueryArgument> { @@ -179,6 +183,7 @@ public ActionMutation(NineChroniclesNodeService service) Field>("combinationEquipment", description: "Combine new equipment.", + deprecationReason: DeprecationReason, arguments: new QueryArguments( new QueryArgument> { @@ -239,6 +244,7 @@ public ActionMutation(NineChroniclesNodeService service) Field>("itemEnhancement", description: "Upgrade equipment.", + deprecationReason: DeprecationReason, arguments: new QueryArguments( new QueryArgument> { @@ -303,6 +309,7 @@ public ActionMutation(NineChroniclesNodeService service) Field>("dailyReward", description: "Get daily reward.", + deprecationReason: DeprecationReason, arguments: new QueryArguments( new QueryArgument> { @@ -345,6 +352,7 @@ public ActionMutation(NineChroniclesNodeService service) }); Field>("chargeActionPoint", description: "Charge Action Points using Material.", + deprecationReason: DeprecationReason, arguments: new QueryArguments( new QueryArgument> { @@ -388,6 +396,7 @@ public ActionMutation(NineChroniclesNodeService service) Field>("combinationConsumable", description: "Combine new Consumable.", + deprecationReason: DeprecationReason, arguments: new QueryArguments( new QueryArgument> { diff --git a/NineChronicles.Headless/GraphTypes/CurrencyEnumType.cs b/NineChronicles.Headless/GraphTypes/CurrencyEnumType.cs index ef6745ea3..84f467599 100644 --- a/NineChronicles.Headless/GraphTypes/CurrencyEnumType.cs +++ b/NineChronicles.Headless/GraphTypes/CurrencyEnumType.cs @@ -9,7 +9,13 @@ public enum CurrencyEnum CRYSTAL, NCG, GARAGE, - MEAD + MEAD, + RUNE_GOLDENLEAF, + RUNE_ADVENTURER, + RUNESTONE_FREYA_LIBERATION, + RUNESTONE_FREYA_BLESSING, + RUNESTONE_ODIN_WEAKNESS, + RUNESTONE_ODIN_WISDOM } public class CurrencyEnumType : EnumerationGraphType