1. 29 Aug, 2019 1 commit
    • Patrick Bajao's avatar
      Repurpose bin/authorized_keys script · 4cee52bd
      Patrick Bajao authored
      It's been replaced by `gitlab-shell-authorized-keys-check` and
      it's also calling the `/authorized_keys` endpoint via Ruby.
      
      Since they have the same functionality as the new binary, better
      to call that instead to make it SSOT for authorized keys requests.
      4cee52bd
  2. 20 Aug, 2019 4 commits
  3. 19 Aug, 2019 3 commits
  4. 15 Aug, 2019 2 commits
    • Nick Thomas's avatar
      Merge branch '206-quick-fix' into 'master' · 81f58545
      Nick Thomas authored
      Replace symlinks with actual binaries
      
      Closes #206
      
      See merge request gitlab-org/gitlab-shell!324
      81f58545
    • Patrick Bajao's avatar
      Replace symlinks with actual binaries · 41f919eb
      Patrick Bajao authored
      We had `gitlab-shell-authorized-keys-check` and
      `gitlab-shell-authorized-principals-check` as symlinks to
      `gitlab-shell` before.
      
      We determine the `Command` and `CommandArgs` that we build based
      on the `Name` of the `Executable`. We also use that to know which
      fallback ruby executable should we fallback to. We use
      `os.Executable()` to do that.
      
      `os.Executable()` behaves differently depending on OS. It may
      return the symlink or the target's name. That can result to a
      buggy behavior.
      
      The fix is to create binaries for each instead of using a symlink.
      That way we don't need to rely on `os.Executable()` to get the name.
      We pass the `Name` of the executable instead.
      41f919eb
  5. 14 Aug, 2019 1 commit
  6. 09 Aug, 2019 2 commits
  7. 08 Aug, 2019 1 commit
  8. 05 Aug, 2019 1 commit
  9. 02 Aug, 2019 1 commit
    • Patrick Bajao's avatar
      Add Executable struct · 3b6f9f75
      Patrick Bajao authored
      This struct is responsible for determining the name and
      root dir of the executable.
      
      The `RootDir` property will be used to find the config.
      
      The `Name` property will be used to determine what `Command`
      and `CommandArgs` to be built.
      3b6f9f75
  10. 31 Jul, 2019 2 commits
    • Patrick Bajao's avatar
      Rename CommandArgs to Shell · 592823d5
      Patrick Bajao authored
      Other functions are still expecting for `CommandArgs` instead
      of `Shell`. They should be expecting `commandargs.Shell` now
      since it has been renamed.
      592823d5
    • Patrick Bajao's avatar
      Support different CommandArgs type · 3b0176df
      Patrick Bajao authored
      `CommandArgs` has been renamed to `Shell`.
      
      An interface has been added that includes `Executable()` and
      `Arguments()` method. The `BaseArgs` implement this methods
      and should be embeeded in each type.
      3b0176df
  11. 29 Jul, 2019 1 commit
    • Patrick Bajao's avatar
      Support falling back to ruby version of checkers · aab85f36
      Patrick Bajao authored
      Rename the ruby scripts to have `-ruby` suffix and add a symlink
      for both to `./gitlab-shell`. The executable name will be used to
      determine how args will be parsed.
      
      For now, we only parse the arguments for gitlab-shell commands. If
      the executable is `gitlab-shell-authorized-keys-check` or
      `gitlab-shell-authorized-principals-check`, it'll always fallback
      to the ruby version.
      
      Ruby specs test the ruby script, the fallback from go to ruby and
      go implementation of both (still pending).
      aab85f36
  12. 22 Jul, 2019 2 commits
  13. 01 Jul, 2019 1 commit
  14. 28 Jun, 2019 2 commits
  15. 27 Jun, 2019 5 commits
  16. 17 Jun, 2019 2 commits
  17. 11 Jun, 2019 2 commits
  18. 06 Jun, 2019 4 commits
  19. 05 Jun, 2019 2 commits
  20. 04 Jun, 2019 1 commit