Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: kamal deploy #307

Merged
merged 2 commits into from
Jun 8, 2024
Merged

feat: kamal deploy #307

merged 2 commits into from
Jun 8, 2024

Conversation

bjarneo
Copy link
Member

@bjarneo bjarneo commented Jun 8, 2024

This pull request introduces several significant changes to the project, primarily focusing on the deployment process and the addition of hooks to the Kamal deployment tool. The changes include the addition of a GitHub workflow for deployment, the creation of several Kamal hooks for different stages of the deployment process, and the addition of curl to the Dockerfile.

Deployment Process Enhancements:

  • .github/workflows/deploy.yaml: A new GitHub workflow has been added for deploying the application. This workflow triggers on a push to the main branch and performs several steps, including setting up the deploy file, installing Ruby, setting up Docker, and deploying the application using Kamal.

  • config/deploy.yml: A new configuration file has been added for the Kamal deployment tool. This file specifies the application service name, container image name, servers to deploy to, environment variables, and other configuration options.

Kamal Hooks:

Other Changes:

  • Dockerfile: The Dockerfile now includes a step to install curl.

@bjarneo bjarneo merged commit 8a20bcb into main Jun 8, 2024
3 checks passed
@bjarneo bjarneo deleted the feat/kamal-deploy branch June 8, 2024 18:20
Copy link

sonarcloud bot commented Jun 8, 2024

Quality Gate Failed Quality Gate failed

Failed conditions
C Maintainability Rating on New Code (required ≥ A)

See analysis details on SonarCloud

Catch issues before they fail your Quality Gate with our IDE extension SonarLint

uses: actions/checkout@v4

- name: Setup deploy file
run: echo ${{ secrets.KAMAL_DEPLOY_YAML }} | base64 -d > config/deploy.yml
Copy link
Member Author

@bjarneo bjarneo Jun 8, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For those wondering what & why, the deploy.yml file with the server IP is base 64 encoded as a secret in Github. This is to hide the IP address from the public until the firewalls are correctly in place for who is allowed to connect to the IP.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant