</h1>
asdf-openssl plugin
asdf-openssl plugin
# asdf-openssl [](https://github.com/VadimDor/asdf-openssl/actions/workflows/build.yml) [](https://github.com/VadimDor/asdf-openssl/actions/workflows/lint.yml)
[asdf-openssl](https://VadimDor.github.io/asdf-openssl) plugin for the [asdf version manager](https://asdf-vm.com).
[](https://github.com/VadimDor/asdf-openssl/actions) [](https://bestpractices.coreinfrastructure.org/projects/99999999) [](https://gitter.im/asdf-openssl/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![ downloads][badge-dl]][downloads] [![ docs][badge-docs]][docs] [![VadimDor on Slack][badge-slack]][slack] [![ on Twitter][badge-twitter]][twitter] [![ on YouTube][badge-yt]][youtube] [![ Gate][badge-gate]][gate] [![License][badge-license]](#license)
[](https://ci.appveyor.com/project/VadimDor/)

[](https://github.com/VadimDor/asdf-openssl/blob/main/LICENSE)
## Build History
[](https://github.com/VadimDor/asdf-openssl/actions)
# δ»η»
Table of Contents
- **Getting Started**
- [π Features](#features-)
- [π Getting Started](#getting-started-)
- [π§ Configuring](#configuring-)
- **Feature Overview**
- β¨ Under active development with improvements and new features added regularly
## Features π
- π 100% free and open-source
- π Easy to setup with Docker
- [
**Tested in Docker**: [](https://labs.play-with-docker.com/?stack=https://raw.githubusercontent.com/VadimDor//master/docker-compose.yml)
[](https://hub.docker.com/r//)
**[β¬οΈ Back to Top](#'asdf-openssl plugin')**
---
# Contents
Index
[Description][description]π
[Dependencies][dependencies]π
[Discussions][discussions]β
[Contributions][contributions]π£β€οΈποΈ
[Metrics][metrics]π‘
[License][license]π
[Code of Conduct][coc]β
[Author][author]π
# Summary
[Readme](../README.md)π
- [Installation](installation.md)π§
- [Usage](usage.md)β¨
- [Usecase](usecase.md)π
- [Advanced](advanced.md)π‘οΈ
- [Communities](communities.md)
- [Change log](/asdf-openssl/CHANGELOG.html)π³
- [Review](review.md)π
- [FAQ](faq.md)βοΈ
- [Donate](donate.md)π
- [Thanks π](thanks.md)
- [Privacy](/asdf-openssl/PRIVACY.html)β‘
- [Terms](/asdf-openssl/TERMS.html)
- [Dependencies](#dependencies)
- [Install](#install)
- [Contributing](#contributing)
- [License](#license)π«
[](https://github.com/sponsors/VadimDor)
#### Sponsors
Huge thanks to the sponsors helping to supportπββοΈ asdf-openssl plugin's development!
Description [β]
This is plugin for asdf tool
#### Contributors
[](./docs/credits.md)
#### Stats
[](https://github.com/VadimDor//blob/main/docs/credits.md)
**[β¬οΈ Back to Top](#'asdf-openssl plugin')**
---
## Developing π§±
> For full development documentation, see: [**Developing**](./docs/developing.md)
[](https://open.vscode.dev/VadimDor/)
[](https://gitpod.io/#github.com/VadimDor/)
[](https://github.dev/VadimDor/)
Before getting started, you'll need [Git](https://git-scm.com/downloads) installed.
To set up the development environment get Code:
`git clone https://github.com/VadimDor/asdf-openssl.git` and `cd `
**Repo Status**:
[](https://github.com/VadimDor//pulls)
[](https://github.com/VadimDor//pulls?q=)
[](https://github.com/VadimDor//commits/main)
[](https://github.com/VadimDor//commits/main)
[](https://github.com/VadimDor//graphs/contributors)
**[β¬οΈ Back to Top](#'asdf-openssl plugin')**
---
# Dependencies
**TODO: adapt these sections below**
- `bash`, `curl`, `tar`: generic POSIX utilities.
- `SOME_ENV_VAR`: set this environment variable in your shell config to load the correct version of tool x.
# Install
[Install asdf](https://asdf-vm.com/guide/getting-started.html), then:
Plugin:
```sh
asdf plugin add asdf-openssl # install the asdf-openssl plugin
# or
asdf plugin add asdf-openssl https://github.com/VadimDor/asdf-openssl.git
asdf asdf-openssl install-deps # install system-specific dependencies for downloading & building Asdf-openssl
```
### To install Asdf-openssl:
When available for the version and platform, the plugin will install pre-compiled binaries of Asdf-openssl. If no binaries are available the plugin will build Asdf-openssl from source.
```sh
# latest stable version of Asdf-openssl
asdf install asdf-openssl latest
# or latest stable minor/patch release of Asdf-openssl 1.x.x
asdf install asdf-openssl latest:1
# or latest stable patch release of Asdf-openssl 1.6.x
asdf install asdf-openssl latest:1.6
# or specific patch release
asdf install asdf-openssl 1.6.8
```
### To install a nightly build of Asdf-openssl:
```sh
# nightly unstable build of devel branch
asdf install asdf-openssl ref:devel
# or nightly unstable build of version-1-6 branch, i.e. the latest 1.6.x release + any recent backports from devel
asdf install asdf-openssl ref:version-1-6
# or nightly unstable build of version-1-4 branch, i.e. the latest 1.4.x release + any recent backports from devel
asdf install asdf-openssl ref:version-1-4
# or nightly unstable build of version-1-2 branch, i.e. the 1.2.x release + any recent backports from devel
asdf install asdf-openssl ref:version-1-2
# or nightly unstable build of version-1-0 branch, i.e. the 1.0.x release + any recent backports from devel
asdf install asdf-openssl ref:version-1-0
```
### To build a specific git commit or branch of Asdf-openssl:
```sh
# build using latest commit from the devel branch
asdf install asdf-openssl ref:HEAD
# build using the specific commit 7d15fdd
asdf install asdf-openssl ref:7d15fdd
# build using the tagged release v1.6.8
asdf install asdf-openssl ref:v1.6.8
```
asdf-openssl:
```shell
# Show all installable versions
asdf list-all asdf-openssl
# Install specific version
asdf install asdf-openssl latest
# Set a version globally (on your ~/.tool-versions file)
asdf global asdf-openssl latest
# Now asdf-openssl commands are available
openssl --version
```
Check [asdf](https://github.com/asdf-vm/asdf) readme for more instructions on how to
install & manage versions.
# asdf-openssl
asdf-openssl allows you to quickly install any version of [Asdf-openssl](https://asdf-openssl-lang.org).
asdf-openssl is intended for end-users and continuous integration. Whether macOS or Linux, x86 or ARM - all you'll need to install Asdf-openssl is bash.
### To set the default version of Asdf-openssl for your user:
```sh
asdf global asdf-openssl latest:1.6
```
This creates a `.tool-versions` file in your home directory specifying the Asdf-openssl version.
### To set the version of Asdf-openssl for a project directory:
```sh
cd my-project
asdf local asdf-openssl latest:1.6
```
This creates a `.tool-versions` file in the current directory specifying the Asdf-openssl version. For additional plugin usage see the [asdf documentation](https://asdf-vm.com/#/core-manage-asdf).
## asdf-openssl packages
asdf-openssl packages are installed in `~/.asdf/installs/asdf-openssl//asdf-openssl/pkgs`, unless a `asdf-openssldeps` directory exists in the directory where `asdf-openssl install` is run from.
See the [asdf-openssl documentation](https://github.com/asdf-openssl-lang/asdf-openssl#asdf-openssls-folder-structure-and-packages) for more information about asdf-openssldeps.
## Continuous Integration
### A simple example using GitHub Actions:
```yaml
name: Build
on:
push:
paths-ignore:
- README.md
env:
GITHUB_TOKEN: $
jobs:
build:
name: Test
runs-on: $
matrix:
include:
# Test against stable Asdf-openssl builds on linux
- os: ubuntu-latest
asdf-openssl-version: latest:1.6
- os: ubuntu-latest
asdf-openssl-version: latest:1.4
# Test against unstable nightly Asdf-openssl builds on macos (faster than building from source)
- os: macos-latest
asdf-openssl-version: ref:version-1-6
- os: macos-latest
asdf-openssl-version: ref:version-1-4
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Asdf-openssl
uses: asdf-vm/actions/install@v1
with:
tool_versions: |
asdf-openssl $
- name: Run tests
run: |
asdf local asdf-openssl $
asdf-openssl develop -y
asdf-openssl test
asdf-openssl examples
```
### Continuous Integration on Non-x86 Architectures
Using [uraimo/run-on-arch-action](https://github.com/uraimo/run-on-arch-action):
```yaml
name: Build
on:
push:
paths-ignore:
- README.md
jobs:
test_non_x86:
name: Test asdf-openssl-$ / debian-buster / $
strategy:
fail-fast: false
matrix:
include:
- asdf-openssl-version: ref:version-1-6
arch: armv7
- asdf-openssl-version: ref:version-1-2
arch: aarch64
runs-on: ubuntu-latest
steps:
- name: Checkout Asdf-openssl project
uses: actions/checkout@v2
- uses: uraimo/run-on-arch-action@v2
name: Install Asdf-openssl & run tests
with:
arch: $
distro: buster
dockerRunArgs: |
--volume "${HOME}/.cache:/root/.cache"
setup: mkdir -p "${HOME}/.cache"
shell: /usr/bin/env bash
install: |
set -uexo pipefail
# Install asdf and dependencies
apt-get update -q -y
apt-get -qq install -y build-essential curl git
git clone https://github.com/asdf-vm/asdf.git "${HOME}/.asdf" --branch v0.10.2
env: |
GITHUB_TOKEN: $
run: |
set -uexo pipefail
. "${HOME}/.asdf/asdf.sh"
# Install asdf-openssl and dependencies
git clone https://github.com/VadimDor/asdf-openssl.git ~/asdf-openssl --branch main --depth 1
asdf plugin add asdf-openssl ~/asdf-openssl
asdf asdf-openssl install-deps -y
# Install Asdf-openssl
asdf install asdf-openssl $
asdf local asdf-openssl $
# Run tests
asdf-openssl develop -y
asdf-openssl test
asdf-openssl examples
```
## Stable binaries
[asdf-openssl-lang.org](https://asdf-openssl-lang.org/install.html) supplies pre-compiled stable binaries of Asdf-openssl for:
Linux:
- `x86_64` (gnu libc)
- `x86` (gnu libc)
## Unstable nightly binaries
[asdf-openssl-lang/nightlies](https://github.com/asdf-openssl-lang/nightlies) supplies pre-compiled unstable binaries of Asdf-openssl for:
Linux:
- `x86_64` (gnu libc)
- `x86` (gnu libc)
- `aaarch64` (gnu libc)
- `armv7l` (gnu libc)
macOS:
- `x86_64`
## Updating asdf and asdf-openssl
```sh
asdf update
asdf plugin update asdf-openssl main
```
### Testing
This project uses [bats](https://github.com/bats-core/bats-core) for unit testing. Please follow existing patterns and add unit tests for your changeset. Dev dependencies for unit tests are installed via:
```shell
cd ~/.asdf/plugins/asdf-openssl
npm install --include=dev
```
Run tests with:
```sh
npm run test
```
### Linting
This project uses [lintball](https://github.com/elijahr/lintball) to auto-format code. Please ensure your changeset passes linting. Enable the githooks with:
```sh
git config --local core.hooksPath .githooks
```
## Want to get support for "asdf-openssl plugin"?
- Check out the [Discussions](https://github.com/VadimDor/asdf-openssl/discussions) to ask questions.
## Want to learn more about OPA?
- Go to [project homepage](https://VadimDor.github.io/asdf-openssl) to get started with documentation and tutorials, for news about it, community, policy and roadmaps.
- Check out the [ADOPTERS.md](/asdf-openssl/ADOPTERS.html) file for a list of production adopters. Does your organization use "asdf-openssl plugin" in production? Support it by submitting a PR to add your organization to the list with a short description of your use cases (or at list star this repository :) )!
## Contributing
First and foremost, all contributions and pull requests are welcome!
* The **steps** involved when making a contribution are **explained** in the [Contributing Guide][contributing]
to learn how to make your first contribution.
* File a [GitHub Issue](https://github.com/VadimDor/asdf-openssl/issues) to request features or report bugs.
We look forward to your contributions!
* The **contributors** list is located [here][contributors].
## Keep in touch
- [Subscribe via email](https://VadimDor.substack.com/) Get the latest updates and (benefits) in a timely manner.
- [Follow our Twitter](https://twitter.com/VadimDor)
- [Join Telegram channel](https://t.me/VadimDor) Receive the latest news
- [Question feedback](/issues/)
Fork this repo, then run:
```sh
rm -rf ~/.asdf/plugins/asdf-openssl
git clone git@github.com:/asdf-openssl.git ~/.asdf/plugins/asdf-openssl
```
[Thanks goes to these contributors](https://github.com/VadimDor/asdf-openssl/graphs/contributors)!
## Star History πππ
[](https://star-history.com/#VadimDor/asdf-openssl&Date)
Discussions [β]
Feel free to give any **ideas** for future **improvements** [here][discussion-ideas],
ask any **questions** you have [here][discussion-questions]
## πReporting Security Vulnerabilitiesπ§±ποΈ
Please report vulnerabilities by any channel.We will send a confirmation message
to acknowledge that we have received the report and then we will send additional
messages to follow up once the issue has been investigated.
Metrics [β]
Code of Conduct [β]
This project follows the πContributor Covenant Code of Conduct.
License [β]
See [LICENSE](/asdf-openssl/LICENSE)π Β© [Vadim Dor](https://github.com/VadimDor/)
**TDLR;** _You can do whatever you like with this: use it in private or commercial settings,_
_redistribute and modify it. But you must display this license and credit the author._
_There is no warranty that this app will work as expected, and the author cannot be held_
_liable for anything that goes wrong._
For more info, see TLDR Legal's [Explanation of MIT](https://tldrlegal.com/license/mit-license)
[](https://app.fossa.com/projects/git%2Bgithub.com%2FVadimDor%2F?ref=badge_large)
**[β¬οΈ Back to Top](#'asdf-openssl plugin')**
---
Thank you for Visiting
**TODO: adapt these sections above**
[description]: https://github.com/VadimDor/asdf-openssl#description-
[installation]: https://github.com/VadimDor/asdf-openssl#installation-
[dependencies]: https://github.com/VadimDor/asdf-openssl#dependencies-
[discussions]: https://github.com/VadimDor/asdf-openssl#discussions-
[contributions]: https://github.com/VadimDor/asdf-openssl#contributions-
[metrics]: https://github.com/VadimDor/asdf-openssl#metrics-
[license]: https://github.com/VadimDor/asdf-openssl#license-
[coc]: https://github.com/VadimDor/asdf-openssl#code-of-conduct-
[author]: https://github.com/VadimDor/asdf-openssl#author-
[releases]: https://github.com/VadimDor/asdf-openssl/releases/
[discussion-ideas]: https://github.com/VadimDor/asdf-openssl/discussions/categories/ideas
[discussion-questions]: https://github.com/VadimDor/asdf-openssl/discussions/categories/q-a
[contributing]: /asdf-openssl/CONTRIBUTING.md
[contributors]: /asdf-openssl/CONTRIBUTORS.html
[pull-request]: https://github.com/VadimDor/asdf-openssl/pulls
[badge-dl]: https://img.shields.io/badge/download-latest-blue
[badge-docs]: https://img.shields.io/badge/docs-read-green
[badge-gate]: https://github.com/VadimDor/asdf-openssl/actions/workflows/main.yml/badge.svg
[badge-license]: https://img.shields.io/badge/license-GPLv2+CE-green
[badge-slack]: https://img.shields.io/badge/Slack-join-active?logo=slack
[badge-twitter]: https://img.shields.io/badge/Twitter-@-active?logo=twitter
[docs]: https://VadimDor.github.io/asdf-openssl/docs/
[downloads]: https://VadimDor.github.io/asdf-openssl/downloads/
[gate]: https://github.com/VadimDor/asdf-openssl/actions/workflows/main.yml
[slack]: https://VadimDor.github.io/asdf-openssl/slack-invitation/
[twitter]: https://twitter.com/VadimDor
[website]: https://VadimDor.github.io/asdf-openssl
Author
</h4>
Author
</h4>