Before contributing, please read the contribution-guide
For local development just spin up a MySQL DB
docker run -e MYSQL_ROOT_PASSWORD=secret -p 3306:3306 -d mysql:latest
This project uses gradle as build tool
- start and configure keycloak
- create a yapam.yaml in the root of the project directory
yapam: identity-provider: KEYCLOAK mail: host: port: username: password: protocol: test-connection: true message-sender: datasource: url: jdbc:mysql://localhost/yapam?createDatabaseIfNotExist=true&user=root&password=secret host: localhost:8080 storage-provider: type: FILESYSTEM oder DROPBOX filesystem: root-path: /data dropbox: root-path: / access-token: YOURAPITOKEN keycloak: auth-server-url: "http://localhost:8888" realm: resource: principal-attribute: preferred_username public-client: true
./gradlew bootRun
- start and configure keycloak
- create an environment file like this: /path/to/.yapam-server.env
YAPAM_IDENTITY-PROVIDER=KEYCLOAK YAPAM_MAIL_HOST= YAPAM_MAIL_PORT= YAPAM_MAIL_USERNAME= YAPAM_MAIL_PASSWORD= YAPAM_MAIL_PROTOCOL= YAPAM_MAIL_TEST-CONNECTION= YAPAM_MAIL_MESSAGE-SENDER= YAPAM_DATASOURCE_URL=jdbc:mysql://yapam-db/yapam?createDatabaseIfNotExists=true&user=root&password=secret YAPAM_HOST=http://localhost:8080 YAPAM_STORAGE-PROVIDER_TYPE=FILEYSTEM oder DROPBOX YAPAM_STORAGE-PROVIDER_FILESYSTEM_ROOT-PATH= YAPAM_STORAGE-PROVIDER_DROPBOX_ROOT-PATH= YAPAM_STORAGE-PROVIDER_DROPBOX_ACCESS-TOKEN KEYCLOAK_AUTH-SERVER-URL=http://localhost:8888 KEYCLOAK_REALM= KEYCLOAK_RESOURCE= KEYCLOAK_PRINCIPAL-ATTRIBUTE=preferred_username KEYCLOAK_PUBLIC-CLIENT=true
docker run -it -p 8080:8080 --env-file /path/to/.yapam-server.env yapam-server