This project is an example how to deploy dotnet core 3.1 API in Heroku using Empire Puzzles information.
Empires & Puzzles: RPG Quest. Empires & Puzzles is a completely new take on RPG games, combining match-3 battles and building a mighty stronghold - topped with thrilling PVP duels.
- Donet core sdk 3.1
- Heroku cli (optional)
- Build project
dotnet build
-
Create
appsettings.Development.json
file -
Config dev connection string on the file
"ConnectionStrings" : {
"PostgreSQL" : "User ID={user};Password={paswword};Host={host};Port=5432;Database={database};Pooling=true;SslMode=Require;TrustServerCertificate=True;"
}
- Run project
dotnet run --project EmpiresPuzzles.API
- Create Heroku app
- Add-ons postgresql on Heroku app
- Find database credentials on dashboard
- Set Heroku environment variable with name
ConnectionStrings__PostgreSQL
User ID={user};Password={paswword};Host={host};Port=5432;Database={database};Pooling=true;SslMode=Require;TrustServerCertificate=True;
-
Configure
APP_NAME
andHEROKU_API_KEY
secrets see more -
Create action with this workflow
-
Run workflow
-
Open swagger endpoint
{APP_NAME}.herokuapp.com/swagger
-
Open GraphQL endpoint
{APP_NAME}.herokuapp.com/graphql
This is an example for getting full fileds of heroes information.
query getFullFields {
heroes {
name
stars
color
teamCost
maxPower
maxAttack
maxDefense
maxHealth
maxLevel
fandomWikiURI
heroSpeed {
description
}
}
}
This is an example for getting hero by name
query getByName {
hero(name: "Thorne") {
name
stars
color
teamCost
maxPower
maxAttack
maxDefense
maxHealth
maxLevel
fandomWikiURI
heroSpeed {
description
}
}
}
Deploy a Containerized ASP.NET Core App to Heroku using GitHub Actions