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: provide deploy command #2

Merged
merged 3 commits into from Aug 2, 2023
Merged

Conversation

jacderida
Copy link
Contributor

@jacderida jacderida commented Aug 1, 2023

  • 7639f2e feat: provide deploy command

    The init command is subsumed as a new deploy command because there's no real reason to have
    these separately; however, all the functionality from the init function in the TestnetDeploy
    struct is still retained.

    At this point, only the Terraform run is being performed. The Ansible run is still to follow.

  • 02513e8 feat: provide clean command

    This command will run a terraform destroy, delete the Terraform workspace, and clear out the
    generated Ansible inventory files.

    It will later be extended for AWS to clear out the created keypair.

    This commit also changes the library code in the crate to make use of the Error type defined in
    the crate rather than using eyre for generic errors. In doing so, we introduced a few specific
    errors for failures in the deployment process.

  • 5d9b812 chore: provide licensing information

    The licensing verification tool was switched on the in the merge workflow to assist in providing the
    relevant details.

    • Provided LICENSE file with BSD-3-Clause license
    • Provided copyright notices on source files
    • Updated the README to include reference to the license
    • Updated the Cargo.toml to include reference to the license

The `init` command is subsumed as a new `deploy` command because there's no real reason to have
these separately; however, all the functionality from the `init` function in the `TestnetDeploy`
struct is still retained.

At this point, only the Terraform run is being performed. The Ansible run is still to follow.
This command will run a `terraform destroy`, delete the Terraform workspace, and clear out the
generated Ansible inventory files.

It will later be extended for AWS to clear out the created keypair.

This commit also changes the library code in the crate to make use of the `Error` type defined in
the crate rather than using `eyre` for generic errors. In doing so, we introduced a few specific
errors for failures in the deployment process.
@jacderida jacderida force-pushed the terraform-run branch 5 times, most recently from 821d044 to 4b4f841 Compare August 2, 2023 00:23
The licensing verification tool was switched on the in the merge workflow to assist in providing the
relevant details.

* Provided LICENSE file with BSD-3-Clause license
* Provided copyright notices on source files
* Updated the README to include reference to the license
* Updated the Cargo.toml to include reference to the license
@jacderida jacderida changed the title WIP -- feat: provide deploy command feat: provide deploy command Aug 2, 2023
name: &str,
node_count: u16,
repo_owner: Option<String>,
branch: Option<String>,
Copy link
Member

Choose a reason for hiding this comment

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

I assume branch will be implemented/used in the follow up PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah, branch and repo owner are used by Ansible to build the custom branch. They aren't used by Terraform, other than to determine whether to create a build VM, which has a much higher specification than node VMs.

@jacderida jacderida merged commit 9bd6609 into maidsafe:main Aug 2, 2023
6 checks passed
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.

None yet

2 participants