Store pipeline job logs in object storage (S3)
<!--IssueSummary start-->
<details>
<summary>
Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards.
</summary>
- [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=17490)
</details>
<!--IssueSummary end-->
### Description
Pipeline job logs (née build logs) grow unbounded and after a while, particular for Java logs, become unmanageable for local or NFS storage. We should use CarrerWave so people can point to external storage (e.g. S3).
### Proposal
### Links / references
* Parent issue: https://gitlab.com/gitlab-org/gitlab-ce/issues/26897
* Related: https://gitlab.com/gitlab-org/gitlab-ce/issues/29203
issue