|
Tags: Mobile edit Mobile web edit |
| (13 intermediate revisions by the same user not shown) |
| Line 171: |
Line 171: |
| ==== 项目 ==== | | ==== 项目 ==== |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | 一组来自单一输入(例如一次 git 检出)的 Job 集群,是你首先需要创建的内容。每个 Job 都应能够独立于其他 Job 进行构建。在大多数情况下,一个项目对应于单一代码仓库,例如 <code>nixpkgs</code>。它类似于 Jenkins 中的项目定义。 |
| A cluster of Jobs which are all coming from a single input (like a git checkout), the first thing you will need to create. Every Job should be able to be built independently from another. Most of the time the project maps to a single repository like <code>nixpkgs</code>. It is comparable to the project definition in Jenkins.
| |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <span id="Jobsets"></span> |
| ==== Jobsets ==== | | ==== 作业集 ==== |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | 作业集是将要运行的一组作业(jobs)列表。通常,一个作业集会对应某个特定分支(如 master、staging、stable)。作业集由其输入(inputs)定义,并会在这些输入发生变化时触发。例如,当某个分支新增提交(commit)时。不同的作业集之间也可以存在依赖关系。 |
| A Jobset is a list of jobs which will be run. Often a jobset fits to a certain branch (master, staging, stable). A Jobset is defined by its inputs and will trigger if these inputs change. For example when a new commit onto a branch is added. Jobsets may depend on each other.
| |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <span id="Job"></span> |
| ==== Job ==== | | ==== 作业 ==== |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | 作为作业集的一部分构建的闭包(例如单个软件包、ISO 镜像或 tarball)。 |
| A closure which will be built as part of a job set (like a single package, iso image or tarball).
| |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <span id="Release_Set"></span> |
| ==== Release Set ==== | | ==== 发布集合 ==== |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | 定义发行版中描述的所有作业。按照惯例,通常会使用名为<code>release.nix</code>的文件。关于其结构的详细说明,请参阅 [https://nixos.org/hydra/manual/#idm140737315920320 Hydra 手册中的 Build Recipes]。 |
| Defines all the jobs which are described in your release. By convention a file called<code>release.nix</code> is being used. See the [https://nixos.org/hydra/manual/#idm140737315920320 Hydra manual for Build Recipes] for a thorough description of the structure.
| |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <span id="Evaluation"></span> |
| ==== Evaluation ==== | | ==== 评估 ==== |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | 将 nix 代码解释为一组 <code>.drv 文件</code> 的过程。这些文件是所有相关输出的构建配方。你可以通过运行 <code>nix show-derivation nixpkgs.hello</code> 来检查这些文件。 |
| The process of interpreting nix code into a list of <code>.drv files</code>. These files are the build recipes for all related outputs. You can introspect these files by running <code>nix show-derivation nixpkgs.hello</code>.
| |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <span id="Build"></span> |
| ==== Build ==== | | ==== 构建 ==== |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | 作为发布集合的一部分而被触发的作业实例化过程。 |
| Instantiation of a Job which is being triggered by being part of the release set.
| |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <span id="Known_Issues"></span> |
| == Known Issues == | | == 已知问题 == |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <div lang="en" dir="ltr" class="mw-content-ltr"> |
| Line 223: |
Line 205: |
| </div> | | </div> |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | * 如果你看到 <code>error: unexpected end-of-file</code>,它可能意味着多种问题,其中一些包括: |
| * If you see <code>error: unexpected end-of-file</code> it can mean multiple things, some of them are: | |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | # 你的 Hydra 服务器与构建器之间的 Nix 版本不匹配 |
| # You have a miss-match between nix versions on the Hydra server and the builder | |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <div lang="en" dir="ltr" class="mw-content-ltr"> |
| Line 249: |
Line 227: |
| </syntaxHighlight> | | </syntaxHighlight> |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <span id="Hydra_for_NixOS_releases"></span> |
| == Hydra for NixOS releases == | | == 用于 NixOS 发布的 Hydra == |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | Hydra 用于管理 Nix 项目的官方发布版本。该项目的 Hydra 服务器:https://hydra.nixos.org/ |
| Hydra is used for managing official Nix project releases. The project Hydra server: https://hydra.nixos.org/ | |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| | 一些适用于 Nix 项目的 Hydra 跟踪器: |
| Some Hydra trackers for Nix projects:
| |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| |
| * [https://hydra.nixos.org/project/nixpkgs Nixpkgs] | | * [https://hydra.nixos.org/project/nixpkgs Nixpkgs] |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr">
| |
| * [https://hydra.nixos.org/project/nixos NixOS] | | * [https://hydra.nixos.org/project/nixos NixOS] |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <span id="Resources"></span> |
| == Resources == | | == 资源 == |
| </div>
| |
|
| |
|
| <div lang="en" dir="ltr" class="mw-content-ltr"> | | <div lang="en" dir="ltr" class="mw-content-ltr"> |