Skip to content
This repository has been archived by the owner on Jun 29, 2022. It is now read-only.

lokoctl arm64 support #1439

Closed
bmiddha opened this issue Mar 19, 2021 · 2 comments
Closed

lokoctl arm64 support #1439

bmiddha opened this issue Mar 19, 2021 · 2 comments

Comments

@bmiddha
Copy link

bmiddha commented Mar 19, 2021

Current situation
lokoctl does not fully work on arm64 architectures.

Output of lokoctl cluster apply on Raspberry Pi 4B

$ lokoctl cluster apply
INFO[0005] Executing step "initialize Terraform"         phase=infrastructure

You can find the logs in "lokomotive-assets/terraform/logs/14277.log"
Initializing modules...

Initializing the backend...

Initializing provider plugins...
- Using previously-installed hashicorp/template v2.2.0
- Using previously-installed hashicorp/local v2.0.0
- Using previously-installed poseidon/matchbox v0.4.1
- Using previously-installed hashicorp/random v3.0.0
- Using previously-installed poseidon/ct v0.7.1
- Using previously-installed hashicorp/null v3.0.0
- Finding hashicorp/tls versions matching "2.2.0"...

Error: Failed to install provider

Error while installing hashicorp/tls v2.2.0: provider
registry.terraform.io/hashicorp/tls 2.2.0 is not available for linux_arm64


FATA[0013] Applying cluster failed: initializing: initializing Terraform: running 'terraform init': failed checking execution status: exit status 1  args="[]" command="lokoctl cluster apply"

Impact
lokoctl does not work on Raspberry Pis (that's where I tested them) and probably won't on other ARM based computers.

Ideal future situation
lokoctl works on ARM64 platforms.

Implementation options
For my use case I was able to get my lokoctl instance working by building from source after bumping the tls provider to v3.0.0 or v3.1.0. v3.0.0 of the tls provider adds support for arm64 architectures. https://github.com/hashicorp/terraform-provider-tls/blob/main/CHANGELOG.md

Fork with changes: https://github.com/bmiddha/lokomotive/tree/terraform_tls_bump

--- a/assets/terraform-modules/bootkube/versions.tf
+++ b/assets/terraform-modules/bootkube/versions.tf
@@ -13,7 +13,7 @@ terraform {
     }
     tls = {
       source  = "hashicorp/tls"
-      version = "2.2.0"
+      version = "3.1.0"
     }
   }
 }

Additional information
I can make a PR for this if needed.
Thank you for creating this project. It has saved me a couple of years of staring at matchbox and ignition logs. 🥇

@iaguis
Copy link
Contributor

iaguis commented Mar 24, 2021

This should be fixed by #1443

@bmiddha
Copy link
Author

bmiddha commented Mar 24, 2021

Thank you.

@bmiddha bmiddha closed this as completed Mar 24, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants