Action GitHub pour l'installation d'outils de développement (principalement à partir des versions GitHub).
Nom | Requis | Description | Taper | Défaut |
---|---|---|---|---|
outil | vrai | Outils à installer (liste séparée par les virgules) | Chaîne | |
somme de contrôle | FAUX | De l'activation des sommes de contrôle | Booléen | true |
Pour installer la dernière version:
- uses : taiki-e/install-action@v2
with :
tool : cargo-hack
Vous pouvez utiliser le sténographie (si vous n'avez pas besoin d'épingler les versions de cette action et de l'outil installé):
- uses : taiki-e/install-action@cargo-hack
Pour installer une version spécifique, utilisez la syntaxe @version
:
- uses : taiki-e/install-action@v2
with :
tool : [email protected]
Vous pouvez également omettre la version de patch. (Vous pouvez également omettre la version mineure si la version principale est 1 ou plus.)
- uses : taiki-e/install-action@v2
with :
tool : [email protected]
Pour installer plusieurs outils:
- uses : taiki-e/install-action@v2
with :
tool : cargo-hack,cargo-minimal-versions
Ou:
- uses : taiki-e/install-action@cargo-hack
- uses : taiki-e/install-action@cargo-minimal-versions
Voir outils.md pour la liste des outils installés à partir de manifestes gérés dans cette action.
Si un outil non inclus dans la liste ci-dessus est spécifié, cette action utilise la cargo-binstall comme repli.
Si vous souhaitez vous assurer que le secours n'est pas utilisé, utilisez fallback: none
.
- uses : taiki-e/install-action@v2
with :
tool : cargo-hack
# Possible values:
# - none: disable all fallback
# - cargo-binstall (default): cargo-binstall (includes quickinstall)
fallback : none
Voir le Guide de développement pour ajouter la prise en charge d'un nouvel outil.
Lors de l'installation de l'outil à partir des versions GitHub, cette action téléchargera l'outil ou son installateur à partir des versions GitHub à l'aide de HTTPS avec TLSV1.2 +. Ceci est essentiellement considéré comme le même niveau de sécurité que l'installation recommandée de rustup.
De plus, cette action vérifiera également les sommes de contrôle SHA256 pour les fichiers téléchargés dans tous les outils installés à partir des versions GitHub. Ceci est activé par défaut et peut être désactivé en définissant l'option d'entrée de checksum
sur false
.
De plus, nous vérifions également la signature si l'outil distribue des archives signées. La vérification de la signature se fait au stade de l'obtention de la somme de contrôle, donc la désactivation de la somme de contrôle désactivera également la vérification de la signature.
Consultez la documentation liée pour des informations sur la sécurité lors de l'installation à l'aide de SNAP ou de cargo-binstall.
Consultez la section des outils pris en charge pour vous assurer que le secours n'est pas utilisé.
Cette action a été testée pour les coureurs hébergés par Github (Ubuntu, MacOS, Windows) et les conteneurs (Ubuntu, Debian, Fedora, Centos, Alma, Opensuse, Arch, Alpine).
Sur Linux, si des outils obligatoires sont manquants, cette action tentera de les installer à partir du gestionnaire de packages de la Distro, donc aucune présélection n'est généralement requise (à l'exception de Centos ou Debian 9 (ou plus) ou très ancienne distribution décrite ci-dessous, qui était Déjà EOL et doit utiliser des référentiels Vault / Archive - voir "Installer les exigences" dans notre configuration CI par exemple de configuration).
Sur d'autres plates-formes, au moins les outils suivants sont nécessaires:
Les environnements connus affectés par les exigences de la version ci-dessus sont CentOS 6 (EOL le 2020-11) en utilisant Curl 7.19, et Ubuntu 12.04 (EOL le 2017-04) en utilisant Curl 7.22 (voir "Installer les exigences" dans notre configuration CI par exemple de solution de contournement) .
cargo install
avec le cache.Licencié sous la licence Apache, la version 2.0 ou la licence MIT à votre option.
Chacun des outils installés par cette action a une licence différente. Voir la section des outils pris en charge pour plus d'informations.
À moins que vous ne soyez explicitement indiqué autrement, toute contribution intentionnellement soumise pour inclusion dans les travaux par vous, telle que définie dans la licence Apache-2.0, doit être autorisée à double licence comme ci-dessus, sans aucune condition supplémentaire.