web-dev-qa-db-fra.com

Comment installer apt-get dans une action GitHub?

Dans les nouvelles actions GitHub, j'essaie d'installer un package afin de l'utiliser dans l'une des étapes suivantes.

name: CI

on: [Push, pull_request]

jobs:
  translations:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
      with:
        fetch-depth: 1
    - name: Install xmllint
      run: apt-get install libxml2-utils
    # ...

Cependant, cela échoue avec

Run apt-get install libxml2-utils
  apt-get install libxml2-utils
  Shell: /bin/bash -e {0}
E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
##[error]Process completed with exit code 100.

Quelle est la meilleure façon de procéder? Doit-il atteindre Docker?

32
Niklas

Les docs disent:

Les machines virtuelles Linux et macOS fonctionnent toutes les deux à l'aide de Sudo sans mot de passe. Lorsque vous devez exécuter des commandes ou installer des outils qui nécessitent plus de privilèges que l'utilisateur actuel, vous pouvez utiliser Sudo sans avoir à fournir de mot de passe.

Donc, simplement faire ce qui suit devrait fonctionner:

- name: Install xmllint
  run: Sudo apt-get install libxml2-utils
31
rmunn