taskman
1.0.0
Symfony를 사용하여 만든 간단한 작업 관리자입니다.
이 프로젝트는 TDD, DDD, CQRS 및 이벤트 중심 아키텍처의 개념을 적용합니다.
이 프로젝트를 실행하려면 Docker
와 Docker-Compose
설치되어 있어야 합니다.
프로젝트를 실행하기 전에 다음 명령을 실행하십시오.
make setup
docker-compose exec php sh -c '
set -e
mkdir -p config/jwt
jwt_passphrase=${JWT_PASSPHRASE:-$(grep ''^JWT_PASSPHRASE='' .env | cut -f 2 -d ''='')}
echo "$jwt_passphrase" | openssl genpkey -out config/jwt/private.pem -pass stdin -aes256 -algorithm rsa -pkeyopt rsa_keygen_bits:4096
echo "$jwt_passphrase" | openssl pkey -in config/jwt/private.pem -passin stdin -out config/jwt/public.pem -pubout
setfacl -R -m u:www-data:rX -m u:"$(whoami)":rwX config/jwt
setfacl -dR -m u:www-data:rX -m u:"$(whoami)":rwX config/jwt
'
프로젝트가 설정되고 컨테이너가 시작된 후 다음을 수행할 수 있습니다.
docker-compose exec php bin/console app:register-user
curl --location --request POST 'http://localhost/api/auth-token'
--form 'username=YOUR_USERNAME'
--form 'password=YOUR_PASSWORD'
curl --location --request POST 'http://localhost/api/tasks'
--header 'Authorization: Bearer YOUR_JWT_TOKEN'
--form 'title=Task #1'
--form 'execution_date=2020-09-20'
# if you don't set the `execution_date` param, the default value is the current date
curl --location --request GET 'http://localhost/api/tasks?execution_date=2020-09-20'
--header 'Authorization: Bearer YOUR_JWT_TOKEN'
단위 및 기능 테스트를 실행하려면 다음 안내를 따르세요.
make test