diff --git a/infra/cfn/forgejo-ecs-cluster.yaml b/infra/cfn/forgejo-ecs-cluster.yaml deleted file mode 100644 index 5c7f46e..0000000 --- a/infra/cfn/forgejo-ecs-cluster.yaml +++ /dev/null @@ -1,33 +0,0 @@ -AWSTemplateFormatVersion: "2010-09-09" -Description: ECS Cluster for Forgejo - -Parameters: - - ClusterName: - Type: String - Default: my-forgejo-cluster - Description: Name of the ECS Cluster - -Resources: - - ECSCluster: - Type: AWS::ECS::Cluster - Properties: - ClusterName: !Ref ClusterName - Tags: - - Key: Project - Value: Git-server - -Outputs: - - ClusterArn: - Description: ARN of the ECS Cluster - Value: !GetAtt ECSCluster.Arn - Export: - Name: !Sub "${AWS::StackName}-ClusterArn" - - ClusterName: - Description: Name of the ECS Cluster - Value: !Ref ClusterName - Export: - Name: !Sub "${AWS::StackName}-ClusterName" diff --git a/infra/cfn/forgejo-ecs-service.yaml b/infra/cfn/forgejo-ecs-service.yaml deleted file mode 100644 index 6401f5c..0000000 --- a/infra/cfn/forgejo-ecs-service.yaml +++ /dev/null @@ -1,86 +0,0 @@ -AWSTemplateFormatVersion: "2010-09-09" -Description: ECS Service for Forgejo - -Parameters: - - ServiceName: - Type: String - Default: forgejo-service - Description: Name of the ECS Service - - TaskDefinitionFamily: - Type: String - Default: forgejo-task - Description: Task definition family name - - DesiredCount: - Type: Number - Default: 1 - Description: Number of desired tasks - - SubnetId1: - Type: String - Default: subnet-064c8fcfd627077ef - Description: First subnet ID for the service - - SubnetId2: - Type: String - Default: subnet-004fa7ef9de2dfb34 - Description: Second subnet ID for the service - - SecurityGroupId: - Type: String - Default: sg-022a8622e7387dc70 - Description: Security group ID for the service - -Resources: - - ECSService: - Type: AWS::ECS::Service - Properties: - ServiceName: !Ref ServiceName - Cluster: !ImportValue forgejo-ecs-cluster-ClusterName - TaskDefinition: !Sub "arn:aws:ecs:${AWS::Region}:${AWS::AccountId}:task-definition/${TaskDefinitionFamily}" - DesiredCount: !Ref DesiredCount - LaunchType: FARGATE - PlatformVersion: LATEST - NetworkConfiguration: - AwsvpcConfiguration: - Subnets: - - !Ref SubnetId1 - - !Ref SubnetId2 - SecurityGroups: - - !Ref SecurityGroupId - AssignPublicIp: ENABLED - LoadBalancers: - - TargetGroupArn: !ImportValue forgejo-network-TargetGroupArn - ContainerName: forgejo - ContainerPort: 3000 - HealthCheckGracePeriodSeconds: 0 - DeploymentConfiguration: - MaximumPercent: 100 - MinimumHealthyPercent: 0 - DeploymentCircuitBreaker: - Enable: true - Rollback: true - SchedulingStrategy: REPLICA - EnableECSManagedTags: true - PropagateTags: TASK_DEFINITION - EnableExecuteCommand: true - Tags: - - Key: Project - Value: Git-server - -Outputs: - - ServiceArn: - Description: ARN of the ECS Service - Value: !Ref ECSService - Export: - Name: !Sub "${AWS::StackName}-ServiceArn" - - ServiceName: - Description: Name of the ECS Service - Value: !GetAtt ECSService.Name - Export: - Name: !Sub "${AWS::StackName}-ServiceName" diff --git a/infra/cfn/forgejo-ecs-task.yaml b/infra/cfn/forgejo-ecs-task.yaml deleted file mode 100644 index 2ec664b..0000000 --- a/infra/cfn/forgejo-ecs-task.yaml +++ /dev/null @@ -1,134 +0,0 @@ -AWSTemplateFormatVersion: "2010-09-09" - -Parameters: - - ForgejoRepositoryName: - Type: String - Default: forgejo-repository - -Resources: - - IAMRoleECSTaskForgejoRole: - UpdateReplacePolicy: "Delete" - Type: "AWS::IAM::Role" - DeletionPolicy: "Delete" - Properties: - Path: "/" - MaxSessionDuration: 3600 - RoleName: "ECSTaskForgejoRole" - Description: "Allows ECS tasks to call AWS services on your behalf." - Policies: - - PolicyDocument: - Version: "2012-10-17" - Statement: - - Resource: "*" - Action: - - "ssmmessages:CreateControlChannel" - - "ssmmessages:CreateDataChannel" - - "ssmmessages:OpenControlChannel" - - "ssmmessages:OpenDataChannel" - Effect: "Allow" - Sid: "ssmmessages" - PolicyName: "ForgejoSSM" - ManagedPolicyArns: - - !Sub "arn:aws:iam::${AWS::AccountId}:policy/ForgejoS3AccessPolicy" - AssumeRolePolicyDocument: - Version: "2012-10-17" - Statement: - - Action: "sts:AssumeRole" - Effect: "Allow" - Principal: - Service: "ecs-tasks.amazonaws.com" - Sid: "" - Tags: - - Value: "Git-server" - Key: "Project" - - ECSTaskDefinitionForgejo: - UpdateReplacePolicy: "Delete" - Type: "AWS::ECS::TaskDefinition" - DeletionPolicy: "Delete" - Properties: - TaskRoleArn: - Fn::GetAtt: - - "IAMRoleECSTaskForgejoRole" - - "Arn" - Memory: "512" - Cpu: "256" - RequiresCompatibilities: - - "FARGATE" - NetworkMode: "awsvpc" - ExecutionRoleArn: !Sub "arn:aws:iam::${AWS::AccountId}:role/ecsTaskExecutionRole" - RuntimePlatform: - OperatingSystemFamily: "LINUX" - CpuArchitecture: "ARM64" - Volumes: - - EFSVolumeConfiguration: - FilesystemId: - !ImportValue forgejo-efs-EFSFileSystemId - TransitEncryption: "ENABLED" - RootDirectory: "/" - AuthorizationConfig: - IAM: "DISABLED" - AccessPointId: - !ImportValue forgejo-efs-EFSAccessPointConfig - Name: "forgejo-config-vol" - - EFSVolumeConfiguration: - FilesystemId: - !ImportValue forgejo-efs-EFSFileSystemId - TransitEncryption: "ENABLED" - RootDirectory: "/" - AuthorizationConfig: - IAM: "DISABLED" - AccessPointId: - !ImportValue forgejo-efs-EFSAccessPointData - Name: "forgejo-data-vol" - ContainerDefinitions: - - Memory: 512 - Cpu: 0 - Image: !Sub "${AWS::AccountId}.dkr.ecr.${AWS::Region}.amazonaws.com/${ForgejoRepositoryName}@sha256:3d64f3ae3d83dbd2e2ded6bcb6fe214c449ce15be540099621d2f7919232c406" - Essential: true - LogConfiguration: - Options: - awslogs-group: "/ecs/forgejo" - mode: "non-blocking" - max-buffer-size: "25m" - awslogs-create-group: "true" - awslogs-region: "ap-northeast-1" - awslogs-stream-prefix: "ecs" - LogDriver: "awslogs" - Name: "forgejo" - LinuxParameters: - InitProcessEnabled: true - MountPoints: - - ReadOnly: false - SourceVolume: "forgejo-data-vol" - ContainerPath: "/var/lib/gitea" - - ReadOnly: false - SourceVolume: "forgejo-config-vol" - ContainerPath: "/etc/gitea" - PortMappings: - - ContainerPort: 3000 - AppProtocol: "http" - Protocol: "tcp" - Name: "forgejo-3000-tcp" - - ContainerPort: 2222 - Protocol: "tcp" - Name: "forgejo-2222-ssh" - Environment: - - Value: "s3.amazonaws.com" - Name: "FORGEJO__STORAGE__MINIO_ENDPOINT" - - Value: "true" - Name: "FORGEJO__SERVICE__DISABLE_REGISTRATION" - - Value: "ap-northeast-1" - Name: "FORGEJO__STORAGE__MINIO_LOCATION" - - Value: "minio" - Name: "FORGEJO__STORAGE__STORAGE_TYPE" - - Value: "true" - Name: "FORGEJO__STORAGE__MINIO_USE_SSL" - - Value: !ImportValue forgejo-s3-BucketName - Name: "FORGEJO__STORAGE__MINIO_BUCKET" - Family: "forgejo-task" - Tags: - - Value: "Git-server" - Key: "Project" diff --git a/infra/cfn/forgejo-network.yaml b/infra/cfn/forgejo-network.yaml index 01cc151..5093a5c 100644 --- a/infra/cfn/forgejo-network.yaml +++ b/infra/cfn/forgejo-network.yaml @@ -77,11 +77,3 @@ Resources: - "git.n-daisuke897.com" Field: "host-header" Transforms: [] - -Outputs: - - TargetGroupArn: - Description: ARN of the Forgejo target group - Value: !Ref ElasticLoadBalancingV2TargetGroupForgejo - Export: - Name: !Sub "${AWS::StackName}-TargetGroupArn"