1. 23 May, 2019 1 commit
    • Francisco Javier López's avatar
      Added service proxy to the kubernetes executor · ced6d4a6
      Francisco Javier López authored
      In this commit we add new session endpoint like
      `/proxy/buildOrService/port/requestedURI`. Through this endpoint
      we will be able to proxy requests to services running
      inside each service container.
      
      At the moment only the kubernetes executor implements this
      new functionality
      ced6d4a6
  2. 06 May, 2019 1 commit
    • Tomasz Maczukin's avatar
      Update mocks · 7da94b6a
      Tomasz Maczukin authored
      We again have some of our mocks not aligned with what mockery
      autogenerates. This MR updates all affected **existing** mocks, so
      calling `make mocks` will not have side effects in specific MRs.
      7da94b6a
  3. 04 May, 2019 1 commit
    • Steve Azzopardi's avatar
      Add support for PowerShell for helper image · 4d832493
      Steve Azzopardi authored
      A default command is passed to the helper image container when it
      starts, since it's specific to Linux it take in consideration which OS
      is being used.
      
      The helperimage package now also controls the command that are used by
      default.
      4d832493
  4. 23 Apr, 2019 1 commit
  5. 19 Apr, 2019 1 commit
  6. 18 Apr, 2019 3 commits
  7. 17 Apr, 2019 2 commits
  8. 16 Apr, 2019 1 commit
    • Kamil Trzciński's avatar
      Optimise trace handling · df7efc0b
      Kamil Trzciński authored
      This makes all traces to be send in chunks
      and to only use incremental sending endpoint.
      
      This makes GitLab Runner to efficiently append
      traces in small chunks, and to not resend unless
      explicitly requested.
      df7efc0b
  9. 09 Apr, 2019 2 commits
  10. 03 Apr, 2019 5 commits
  11. 01 Apr, 2019 3 commits
  12. 28 Mar, 2019 1 commit
  13. 27 Mar, 2019 1 commit
  14. 21 Mar, 2019 1 commit
    • Tomasz Maczukin's avatar
      Remove unnecessary log alias for logrus inport · d9e9d81c
      Tomasz Maczukin authored
      Some time ago [we had a discussion](!934 (comment 91891281))
      about why we're aliasing some of the imports of `github.com/sirupsen/logrus`
      package with a `log` alias.
      
      At that moment we've been doing that in 17 from 68 cases when logrus
      was imported in Runners codebase.
      
      The conclusion was this aliasing is unnecessary, because:
      - we relay on logrus interface so much that moving to another logging
        library will be not so simple as switching the import name;
      - we're totally not consistent in the alias usage which makes the code
        even more messy.
      
      Three GitLab Runner maintainers agreeded hat there is no reason to use
      the aliasing and that we should just use `logrus` everywhere.
      
      But no action was don since then. The cleanup was left for a future.
      
      Unfortunately, because GitLab Runner is one of our biggest projects in
      Go, for some people it becomes a source of suggestions of how certain
      things should be handled. For example here is a discussion in a new
      project that creates a go-based tool for our Serverless integration:
      
      gitlabktl!9 (comment 152472275)
      
      The most important statement is:
      
      > perhaps we could leave it as is since it is how we are exposing
        logrus in the runner project
      
      Because we already know that it should be changed and others start to
      look on Runner's code to find good patterns, let's finally cleanup
      the `log` aliasing mess.
      d9e9d81c
  15. 12 Mar, 2019 2 commits
  16. 11 Mar, 2019 1 commit
  17. 07 Mar, 2019 2 commits
  18. 06 Mar, 2019 1 commit
    • Kamil Trzciński's avatar
      Add ability to mask variables. · 4bf5c2fd
      Kamil Trzciński authored
      This makes variables to be allowed to be `masked: true`.
      The masked values will be replaced with `[MASKED]`.
      The masking is done in-line, thus we delay sending trace
      if the content is partial match for masked output.
      4bf5c2fd
  19. 05 Mar, 2019 1 commit
    • Steve Azzopardi's avatar
      Add feature flag to use old API for helper · 42616e40
      Steve Azzopardi authored
      With !1195 &
      !1201 the bash
      scripts were moved to Go so that they can be used for windows
      containers.
      
      It's safe to use these commands on new helper images, which is
      automatically downloaded when the user does not specify a `helper_image`
      in the config file. If the user has specified a helper image which does
      not use the new API will be considered as a breaking change.
      
      If the `helper_image` is specified and the newly introduced feature flag
      `FF_DOCKER_HELPER_IMAGE_V2` is not set, use the old command when
      starting the container.
      42616e40
  20. 04 Mar, 2019 1 commit
    • Alessio Caiazza's avatar
      Add refspec fetching feature · d48d6583
      Alessio Caiazza authored
      Gitlab can now control the source getting process providing a set of
      refspec.
      
      If present runner will switch to the new method.
      d48d6583
  21. 17 Feb, 2019 1 commit
  22. 15 Feb, 2019 1 commit
  23. 11 Feb, 2019 1 commit
  24. 23 Jan, 2019 2 commits
  25. 08 Jan, 2019 3 commits
    • Chris Hoffman's avatar
      e4e8c5ca
    • Stan Hu's avatar
      Clean up build_test.go from review · 83794971
      Stan Hu authored
      83794971
    • Steve Azzopardi's avatar
      Use build timeout when shorter then session timeout · 5bac09cd
      Steve Azzopardi authored
      For `waitForTerminal` check if the build timeout is actually shorter
      then the terminal session timeout. If so, parse the time left, show it
      to the user and use it as a timeout as well.
      
      The reason `timeout` is being updated and used for `time.After` (in the
      select statement) is so we have a good seperation between when
      `ctx.Done` is being called because the user actually cancelled the build
      and when the context deadline is reached.
      
      Add `RoundDuration` which is the same as `time.duration.Round` but since
      we are using go1.8 it is missing.
      
      Add a test cases for each scenario `waitForTerminal` has.
      5bac09cd