You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+30-14Lines changed: 30 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@
3
3
## Getting Started
4
4
This repository shows ways to use the [aws4embeddedlinux-ci](https://github.com/aws4embeddedlinux/aws4embeddedlinux-ci.git) library.
5
5
6
-
In order to use these examples, you must set up the [CDK](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html), including
6
+
In order to use these examples, you must set up the [CDK](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html), including
7
7
installing the CDK tool and bootstrapping the account you wish to deploy to. Additionally, you must have [Node](https://nodejs.org/en/) installed.
8
8
9
9
### Clone and Setup NPM Project
@@ -14,7 +14,7 @@ npm install .
14
14
npm run build
15
15
```
16
16
17
-
Note that while the CDK projects often do not require that you invoke the build command separately, doing so will ensure various assets
17
+
Note that while the CDK projects often do not require that you invoke the build command separately, doing so will ensure various assets
18
18
in the library are packaged correctly.
19
19
20
20
### Deploying
@@ -25,9 +25,17 @@ To deploy _all_ the pipeline examples, you can use the CDK deploy command:
25
25
cdk deploy --all
26
26
```
27
27
28
-
The pipelines can be found in the `Developer Tools > Code Pipeline > Pipelines` Console page. The newly created
29
-
pipeline `ubuntu_22_04BuildImagePipeline` should start automatically. If not, it will need to be run before other
30
-
pipelines will work correctly. Once it is complete, the EmbeddedLinuxPipeline in the CodePipeline console page is ready to run.
28
+
Alternatively to deploy just a specific pipeline example, you can use the CDK deploy command:
29
+
30
+
EXAMPLE can be one or more of those: QemuEmbeddedLinuxPipeline, PokyAmiPipeline, KasPipeline, RenesasPipeline, NxpImxPipeline
31
+
32
+
```bash
33
+
cdk deploy BuildImagePipeline <EXAMPLE>
34
+
```
35
+
36
+
The pipelines can be found in the `Developer Tools > Code Pipeline > Pipelines` Console page. The newly created
37
+
pipeline `ubuntu_22_04BuildImagePipeline` should start automatically. If not, it will need to be run before other
38
+
pipelines will work correctly. Once it is complete, the EmbeddedLinuxPipeline in the CodePipeline console page is ready to run. Thus `BuildImagePipeline` must always be part of the deployment if you deploy just a specific example.
31
39
32
40
### Removing Pipelines
33
41
The `cdk destroy` command can be used to remove individual pipelines and their related resources. This can also be done in the CloudFormation Console Page.
@@ -43,31 +51,35 @@ Several example pipelines are provided. Each one demonstrates a different aspect
43
51
### A Simple Poky Based Pipeline
44
52
This example will build the `core-image-minimal` image from Poky using the repo tool to manage layers. CVE checking is also enabled in the buildspec file.
45
53
46
-
The recommended place to view this is from the `Developer Tools > Code Pipeline > Pipelines` page. The pipeline will start with `PokyPipeline-`
47
-
followed by some unique identifier. From the pipeline page, you can find the CodeCommit source repository, the CodeBuild Project (with build logs),
54
+
The recommended place to view this is from the `Developer Tools > Code Pipeline > Pipelines` page. The pipeline will start with `PokyPipeline-`
55
+
followed by some unique identifier. From the pipeline page, you can find the CodeCommit source repository, the CodeBuild Project (with build logs),
48
56
and the S3 bucket that the image is uploaded to, at the end.
49
57
50
58
#### Using Kas
51
-
The Kas example shows how to use a [Kas Config](https://github.com/aws4embeddedlinux/aws4embeddedlinux-ci/blob/main/source-repo/kas/kas.yml) to manage
59
+
The Kas example shows how to use a [Kas Config](https://github.com/aws4embeddedlinux/aws4embeddedlinux-ci/blob/main/source-repo/kas/kas.yml) to manage
52
60
layers. This tool can help programatically manage layers and config with tighter Yocto integration than Git Submodules or the Repo tool.
53
61
54
62
See the AWS CodeBuild pipeline: KasPipeline-EmbeddedLinuxPipeline*
55
63
64
+
Example stack name: KasPipeline
65
+
56
66
#### A slightly modified version building a qemu pipeline:
57
-
This example builds a Qemu based image using [meta-aws-demos](https://github.com/aws4embeddedlinux/meta-aws-demos). The Qemu image can be run in
58
-
the CodeBuild environment. Using SLIRP networking, [OEQA testing](https://docs.yoctoproject.org/singleindex.html#performing-automated-runtime-testing)
67
+
This example builds a Qemu based image using [meta-aws-demos](https://github.com/aws4embeddedlinux/meta-aws-demos). The Qemu image can be run in
68
+
the CodeBuild environment. Using SLIRP networking, [OEQA testing](https://docs.yoctoproject.org/singleindex.html#performing-automated-runtime-testing)
59
69
such as ptest can be run in the pipeline.
60
70
61
71
See the AWS CodeBuild pipeline: QemuEmbeddedLinuxPipeline-EmbeddedLinuxPipeline*
62
72
63
73
### A Poky Based EC2 AMI Pipeline
64
-
Yocto can be used to create an EC2 AMI. This example builds an AMI based on Poky and meta-aws and exports it to your AMI registry using
74
+
Yocto can be used to create an EC2 AMI. This example builds an AMI based on Poky and meta-aws and exports it to your AMI registry using
65
75
the [VM Import/Export Service](https://docs.aws.amazon.com/vm-import/latest/userguide/what-is-vmimport.html).
66
76
67
77
The pipeline name starts with `PokyAmiPipeline-` in the CodePipeline page.
68
78
79
+
Example stack name: PokyAmiPipeline
80
+
69
81
### A NXP / IMX Pipeline
70
-
This example will build an image for
82
+
This example will build an image for
71
83
the [i.MX 6ULL EVK](https://www.nxp.com/design/development-boards/i-mx-evaluation-and-development-boards/evaluation-kit-for-the-i-mx-6ull-and-6ulz-applications-processor:MCIMX6ULL-EVK) board.
72
84
73
85
Accepting the EULA is required. For this you need to uncomment the
@@ -78,9 +90,11 @@ Accepting the EULA is required. For this you need to uncomment the
78
90
79
91
The pipeline name starts with `NxpImxPipeline-` in the CodePipeline page.
80
92
93
+
Example stack name: NxpImxPipeline
94
+
81
95
### Using pre-built, proprietary artifacts in a Pipeline
82
96
83
-
This example is based on this [work](https://elinux.org/R-Car/Boards/Yocto-Gen3/v5.9.0) to build an image for Renesas R-Car-H3 Starter Kit
97
+
This example is based on this [work](https://elinux.org/R-Car/Boards/Yocto-Gen3/v5.9.0) to build an image for Renesas R-Car-H3 Starter Kit
84
98
Premier board (unofficial name - H3ULCB) including the proprietary graphics and multimedia drivers from Renesas.
85
99
86
100
Download the Multimedia and Graphics library and related Linux drivers from the following link (registration necessary):
@@ -95,12 +109,14 @@ Graphic drivers are required for Wayland. Multimedia drivers are optional.
95
109
96
110
#### Steps to build the image
97
111
98
-
1. Create a folder named `proprietary` in the root of the source repo, and put those two downloaded files into this folder.
112
+
1. Create a folder named `proprietary` in the root of the source repo, and put those two downloaded files into this folder.
99
113
1. Deploy the build pipeline and uncomment the `#TODO` in the build.sh file.
100
114
1. A build should automatically start. Once it succeeds you will get an image containing the proprietary graphics and multimedia drivers.
101
115
102
116
See the AWS CodeBuild pipeline: RenesasPipeline-EmbeddedLinuxPipeline*
0 commit comments