#variant (2020-10)
Discuss variant (the “Universal CLI”) https://github.com/mumoshu/variant
Archive: https://archive.sweetops.com/variant/
2020-10-15
![Erik Osterman (Cloud Posse) avatar](https://secure.gravatar.com/avatar/88c480d4f73b813904e00a5695a454cb.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0023-72.png)
@mumoshu see the new announcement today from HashiCorp on Waypoint? https://www.waypointproject.io/
Example config: https://github.com/hashicorp/waypoint-examples/blob/main/kubernetes/exec-kubectl-apply/waypoint.hcl
![attachment image](https://www.waypointproject.io/img/og-image.png)
Waypoint is an open source solution that provides a modern workflow for build, deploy, and release across platforms.
Example Apps that can be deployed with Waypoint. Contribute to hashicorp/waypoint-examples development by creating an account on GitHub.
![Erik Osterman (Cloud Posse) avatar](https://secure.gravatar.com/avatar/88c480d4f73b813904e00a5695a454cb.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0023-72.png)
![Erik Osterman (Cloud Posse) avatar](https://secure.gravatar.com/avatar/88c480d4f73b813904e00a5695a454cb.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0023-72.png)
![attachment image](https://www.waypointproject.io/img/og-image.png)
The use
stanza specifies the name and configuration of a plugin to use for an operation.
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
@Erik Osterman (Cloud Posse) Just read the announcement. Looks nice!
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
Probably variant could be handy when used from waypoint hooks(https://www.waypointproject.io/docs/lifecycle/hooks) and exec plugin(https://www.waypointproject.io/plugins/exec)
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
The most impressive aspect of it for me was https://www.waypointproject.io/docs/internals/execution#most-common-cli-and-a-remote-server
![attachment image](https://www.waypointproject.io/img/og-image.png)
This page documents how operations such as build, deploy, and release execute within Waypoint. This helps explain what components need access to what systems and how information flows within Waypoint.
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
Apparently you can start from no server, and gradually move heavy processes to the waypoint server in the future
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
With the problem statements framed, we said: as a solution we love Heroku. Is it possible to build that platform-like experience (buildpacks, logs, exec, router, etc.) WITHOUT opinionated infrastructure? Without being an all-in closed system? And I think Waypoint got it.
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
A couple of weeks ago, I saw a demo of Waypoint, the new tool Hashicorp announced today, that aims to provide an easy, intuitive and…
2020-10-19
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
Turns out Waypoint is not make or variant at all. It’s a pluggable PaaS powered by not cli only but also waypoint-entrypoint and waypoint-server
Probably we may use variant to wrap waypoint-cli or call variant commands via waypoint’s exec plugin
![Erik Osterman (Cloud Posse) avatar](https://secure.gravatar.com/avatar/88c480d4f73b813904e00a5695a454cb.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0023-72.png)
This is the description that they needed to have on their website
![Erik Osterman (Cloud Posse) avatar](https://secure.gravatar.com/avatar/88c480d4f73b813904e00a5695a454cb.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0023-72.png)
So much confusion over what it is
2020-10-20
![Amit Karpe avatar](https://avatars.slack-edge.com/2020-10-12/1446236909088_19447f2334e3bc9e9a8c_72.jpg)
I found Porter a project which was accepted by the CNCF recently. I am still trying to understand whether it is close to what variant dose!
Package your application artifact, client tools, configuration and deployment logic together as a versioned bundle that you can distribute, and then install with a single command
![attachment image](https://porter.sh/images/porter-twitter-card.png)
Compose Cloud Native Application Bundles from existing bundles and deployment tools
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
variant is mostly a HCL-based DSL and the compiler to build CLI apps. So my guess is that porter should be used to package variant-made apps
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
also - it may theoretically possible to export your variant-made command as a porter bundle by using https://porter.sh/custom-dockerfile/.
2020-10-28
![mumoshu avatar](https://secure.gravatar.com/avatar/8e045bf747ca7a90b1d955dc30217271.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0015-72.png)
You can now turn your Variant2 command into a Kubernetes controller See https://github.com/mumoshu/variant2/pull/35
See examples/controller for more information.