Code States/TIL

[0411] (페어) YAML - YAML 작성

ki1111m2 2023. 4. 11. 13:15

Bare Minimum Requirement

YAML 문서를 조건에 맞게 작성하여 총 3개의 테스트케이스를 통과해야 합니다.

 

TEST 1

아래의 표와 같은 데이터를 YAML 파일로 작성하세요.

test1: 
  #TODO: 여기에 1번 데이터를 YAML 형식으로 작성하세요. 
  Car:
    Color: Blue
    Model:
      Name: Cyber Truck
      Year: 2022
    Fuel: Electric
    Price: $100,000

 

TEST 2

다음 데이터를 YAML 형식으로 변경하여 작성하세요.

  • Statement는 각 다섯개의 dictionary를 요소로 하는 array/list의 형태로 작성되어야 합니다.
  • 각 요소 중 [ ] 로 작성된 것은 list의 형태로 작성되어야 합니다.
  • 같은 배경색을 가지는 값들은 dictionary의 형태로 작성되어야 하며, array/list의 한 요소여야 합니다.

test2: 
  #TODO: 여기에 2번 데이터를 YAML 형식으로 작성하세요.  
  Version: 2012-10-17
  Statement: 
    - Effect: Allow
      Action: 
        - ec2:*
        - elasticloadbalancing:*
        - route53:*
        - autoscaling:*
        - cloudwatch:*
        - SNS:*
      Resource: 
        - "*"
    - Effect: Allow
      Action: 
        - s3:*
      Resource: 
        - arn:aws:s3:::travis-terraform-state
        - arn:aws:s3:::travis-terraform-state/*
        - arn:aws:s3:::travis-shared-1-registry-images
        - arn:aws:s3:::travis-shared-1-registry-images/*
        - arn:aws:s3:::travis-shared-2-registry-images
        - arn:aws:s3:::travis-shared-2-registry-images/*
    - Effect: Allow
      Action: 
        - iam:GetUser
      Resource: 
        - arn:aws:iam::341288657826:user/igor-terraform
    - Effect: Allow
      Action: 
        - iam:*
      Resource: 
        - arn:aws:iam::341288657826:role/*
        - arn:aws:iam::341288657826:user/registry-shared-1
        - arn:aws:iam::341288657826:user/registry-shared-2
        - arn:aws:iam::*:user/cyclist-*
        - arn:aws:iam::*:user/worker-*
        - arn:aws:iam::*:user/build-trace-*
    - Effect: Allow
      Action: 
        - dynamodb:*
      Resource: 
        - arn:aws:dynamodb:us-east-1:341288657826:table/travis-terraform-state

 

TEST3

다음 JSON으로 작성된 설정 파일을 YAML 형식으로 작성하세요.

test3: {
		"name": "Node.js CI",
		"on": {
			"push": {
				"branches": "main"
			},
			"pull_request": {
				"branches": "main"
			}
		},
		"jobs": {
			"build": {
				"runs-on": "ubuntu-latest",
				"steps": [
					{
						"uses": "actions/checkout@v2"
					},
					{
						"name": "Use Node.js",
						"uses": "actions/setup-node@v1",
						"with": {
							"always-auth": true,
							"node-version": "12.x",
							"registry-url": "https://registry.npmjs.org",
							"scope": "@octocat"
						}
					},
					{
						"name": "Install dependencies",
						"run": "npm ci",
						"env": {
							"NODE_AUTH_TOKEN": "${{secrets.NPM_TOKEN}}"
						}
					}
				]
			}
		}
	}
test3: 
  #TODO: 여기에 3번 데이터를 YAML 형식으로 작성하세요.
  name: Node.js CI
  on: 
    push: 
      branches: main
    pull_request: 
      branches: main
  jobs: 
    build: 
      runs-on: ubuntu-latest
      steps: 
        - uses: actions/checkout@v2
        - name: Use Node.js
          uses: actions/setup-node@v1
          with: 
            always-auth: true
            node-version: 12.x
            registry-url: https://registry.npmjs.org
            scope: "@octocat"
        - name: Install dependencies
          run: npm ci
          env: 
            NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}

오타도 없고.. 들여쓰기도 잘 했는데 실행이 안돼서

다른 분거를 복사해서 넣었더니 실행이 된다..

진짜 왠지 모르겠어서 내가 작성한 코드에서 공백을 지웠다가 다시 넣었는데

같은 들여쓰기 칸인데 다시 하니까 됐다

종종 있는 붙여넣기 오류인건가.. 뭐지