iam.tf 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. # resource "aws_iam_role" "codebuild_role" {
  2. # name = "codebuild_role"
  3. # assume_role_policy = <<EOF
  4. # {
  5. # "Version": "2012-10-17",
  6. # "Statement": [
  7. # {
  8. # "Effect": "Allow",
  9. # "Principal": {
  10. # "Service": [
  11. # "codebuild.amazonaws.com"
  12. # ]
  13. # },
  14. # "Action": "sts:AssumeRole"
  15. # }
  16. # ]
  17. # }
  18. # EOF
  19. # }
  20. # resource "aws_iam_role_policy_attachment" "codebuild_role_policy_attach" {
  21. # role = aws_iam_role.codebuild_role.name
  22. # policy_arn = aws_iam_policy.codebuild_policy.arn
  23. # }
  24. # # Some things about this policy I'm not perfectly sure about, like
  25. # # should the account number be hardcoded? Also, it reads like we'll have to
  26. # # update it each time we have a new repository added to codecommit - that
  27. # # or we'll need to authorize the codebuild role to be able to pull from any
  28. # # codecommit repo. Which may be fine?
  29. # resource "aws_iam_policy" "codebuild_policy" {
  30. # name = "codebuild_policy"
  31. # description = "Policy for AWS codebuild to build and store artifacts"
  32. # policy = <<EOF
  33. # {
  34. # "Version": "2012-10-17",
  35. # "Statement": [
  36. # {
  37. # "Effect": "Allow",
  38. # "Resource": [
  39. # "arn:aws-us-gov:logs:us-gov-east-1:701290387780:log-group:/aws/codebuild/*"
  40. # ],
  41. # "Action": [
  42. # "logs:CreateLogGroup",
  43. # "logs:CreateLogStream",
  44. # "logs:PutLogEvents"
  45. # ]
  46. # },
  47. # {
  48. # "Effect": "Allow",
  49. # "Resource": [
  50. # "arn:aws-us-gov:s3:::codepipeline-us-gov-east-1-*"
  51. # ],
  52. # "Action": [
  53. # "s3:PutObject",
  54. # "s3:GetObject",
  55. # "s3:GetObjectVersion"
  56. # ]
  57. # },
  58. # {
  59. # "Effect": "Allow",
  60. # "Resource": [
  61. # "arn:aws-us-gov:codecommit:us-gov-east-1:701290387780:*"
  62. # ],
  63. # "Action": [
  64. # "codecommit:GitPull"
  65. # ]
  66. # },
  67. # {
  68. # "Effect": "Allow",
  69. # "Resource": [
  70. # "arn:aws-us-gov:s3:::xdr-codebuild-artifacts/*",
  71. # "arn:aws-us-gov:s3:::*"
  72. # ],
  73. # "Action": [
  74. # "s3:PutObject",
  75. # "s3:GetObject*",
  76. # "s3:ListBucket"
  77. # ]
  78. # },
  79. # {
  80. # "Effect": "Allow",
  81. # "Resource": [
  82. # "*"
  83. # ],
  84. # "Action": [
  85. # "ecr:GetAuthorizationToken",
  86. # "ecr:BatchCheckLayerAvailability",
  87. # "ecr:CompleteLayerUpload",
  88. # "ecr:GetAuthorizationToken",
  89. # "ecr:InitiateLayerUpload",
  90. # "ecr:PutImage",
  91. # "ecr:UploadLayerPart"
  92. # ]
  93. # }
  94. # ]
  95. # }
  96. # EOF
  97. # }