Research and implement deployment script #701

Closed
opened 2026-05-04 11:02:35 +00:00 by b24johka · 8 comments
Collaborator

We need to have some sort of standard to deploy the application to the server, this is often done with a deployment script which clones the repository and installs the application

We need to have some sort of standard to deploy the application to the server, this is often done with a deployment script which clones the repository and installs the application
Author
Collaborator

https://dev.to/primocrypt/building-an-automated-docker-deployment-script-a-complete-beginners-guide-2b0f

Research from this source has been done.

What seems necessary?

  • Clean up of the previous docker containers each deployment seems like a good idea, a lot of unnecessary storage would otherwise be used.

  • Updating of the server system each deployment to ensure that it is running on viable versions.

  • Deployment script that automates the installation script to not make manual mistakes.

Questions for management/leaders

  • Integrate to work with Actions (This will make the deployment automatic whenever Main is being updated)

  • Configure reverse proxy to enable HTTPS

https://dev.to/primocrypt/building-an-automated-docker-deployment-script-a-complete-beginners-guide-2b0f Research from this source has been done. ## What seems necessary? - Clean up of the previous docker containers each deployment seems like a good idea, a lot of unnecessary storage would otherwise be used. - Updating of the server system each deployment to ensure that it is running on viable versions. - Deployment script that automates the installation script to not make manual mistakes. ## Questions for management/leaders - Integrate to work with Actions (This will make the deployment automatic whenever Main is being updated) - Configure reverse proxy to enable HTTPS
Author
Collaborator

Forgejo actions

## Forgejo actions ## - Deployment on main pushes is possible with forgejo. - SSH keys can be securely managed through https://forgejo.org/docs/next/user/actions/basic-concepts/#secrets - Requires that we enable Forgejo runner (Might be an issue of its own)
Author
Collaborator

After discussion with the customer its been brought to attention that the issues regarding the web server should be minimized.

Points that wont be fixed:

  • Forgejo actions is not relevant right now, because handling of SSH-key is sensitive.
  • Clean up of previous docker containers are minimal. (Expected to bloat the server over time)
  • Firewall of server has not been enhanced.
  • No automated continuous deployment
  • No monitoring tools of server (Downtime notifications, prometheus and grafana)
## After discussion with the customer its been brought to attention that the issues regarding the web server should be minimized. Points that wont be fixed: - Forgejo actions is not relevant right now, because handling of SSH-key is sensitive. - Clean up of previous docker containers are minimal. (Expected to bloat the server over time) - Firewall of server has not been enhanced. - No automated continuous deployment - No monitoring tools of server (Downtime notifications, prometheus and grafana)
Collaborator

Requesting review from @f21marfo

Requesting review from @f21marfo
Collaborator

Review on #701

Whats done

  • Read through comments.
  • Read through links.

What needs to be done

  • The question asked with this issue, so to speak, was to establish a standard for deploying the application to server, but what is the conclusion? Are we using a deployment script of any kind, or not? This needs clarification.
  • Needs a summary/final report/conclusion.

Conclusion

  • I found this research notes a bit difficult to follow, especially towards the end. For instance, a point that "wont be fixed" was "no automated continuous deployment", which sounds a bit ambigous. What does that mean in this context? No automated deployment at all? As noted, there needs to be a clear and concise summary of the findings.
# Review on #701 ## Whats done + Read through comments. + Read through links. ## What needs to be done + The question asked with this issue, so to speak, was to establish a standard for deploying the application to server, but what is the conclusion? Are we using a deployment script of any kind, or not? This needs clarification. + Needs a summary/final report/conclusion. ## Conclusion + I found this research notes a bit difficult to follow, especially towards the end. For instance, a point that "wont be fixed" was "no automated continuous deployment", which sounds a bit ambigous. What does that mean in this context? No automated deployment at all? As noted, there needs to be a clear and concise summary of the findings.
Author
Collaborator

Summary of research and decisions

  • Deployment script implementation

The deployment script has been implemented for both Unix and Windows, removes containers aswell as updating the server each time we run it. Since the server is remote, the output of the script is saved in a directory called logs. See more here
https://git.webug.se/Andras/BoundlessFlowCampus2K/wiki/Server-Deployment.-

(The windows instructions will be created soon)

  • Automated deployment will not be implemented (right now)

What this means is there will not be an automated execution of our scripts on changes in the repository. This is because it would need Forgejo Actions with the SSH-key, prefferrebly with the use of https://forgejo.org/docs/next/user/actions/basic-concepts/#secrets. However, the customer is very careful about the usage of the SSH-key and prefers that we run the script manually.

  • Deployment/Website monitoring is now a research issue

At the time of research for this issue it was decided to not have any monitoring, this was until #959 suggested we should have a grip over the webpage availability,
the issue on monitoring can be found here #1085

Conclusion

These are the final most important points regarding this issue, i hope it will satisfy the reviewer.

# Summary of research and decisions - **Deployment script implementation** The deployment script has been implemented for both Unix and Windows, removes containers aswell as updating the server each time we run it. Since the server is remote, the output of the script is saved in a directory called logs. See more here https://git.webug.se/Andras/BoundlessFlowCampus2K/wiki/Server-Deployment.- (The windows instructions will be created soon) - **Automated deployment will not be implemented (right now)** What this means is there will not be an automated execution of our scripts on changes in the repository. This is because it would need Forgejo Actions with the SSH-key, prefferrebly with the use of https://forgejo.org/docs/next/user/actions/basic-concepts/#secrets. However, the customer is very careful about the usage of the SSH-key and prefers that we run the script manually. - **Deployment/Website monitoring is now a research issue** At the time of research for this issue it was decided to not have any monitoring, this was until https://git.webug.se/Andras/BoundlessFlowCampus2K/issues/959 suggested we should have a grip over the webpage availability, the issue on monitoring can be found here https://git.webug.se/Andras/BoundlessFlowCampus2K/issues/1085 ## Conclusion These are the final most important points regarding this issue, i hope it will satisfy the reviewer.
Collaborator

Much clearer, excellent summary!

Much clearer, excellent summary!
Collaborator

Great job, I will close this research issue!

Great job, I will close this research issue!
Sign in to join this conversation.
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Andras/BoundlessFlowCampus2K#701
No description provided.