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
* moved cf_export limitation to docs* fixed codeblock display issue* renamed heading and and update variables* fixed example code snippe formatting* moved Public ECR to docs* moved windows items together* removed duplicate KB* cron timezone already in docs* Fix formatting* Update variables.md---------Co-authored-by: NimRegev <nima.regev@codefresh.io>
Copy file name to clipboardExpand all lines: _docs/incubation/windows.md
+24-11Lines changed: 24 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,21 +17,17 @@ If you have projects in your organization based on the .NET Framework or are in
17
17
18
18
Once approved, you will get access to a new runtime environment on a dedicated Windows Server version 1709 VM. This means that you will be able to run both Windows and Linux/x86 builds from the same Codefresh account by choosing the appropriate[pipeline settings]({{site.baseurl}}/docs/pipelines/pipelines/#pipeline-settings).
19
19
20
-
21
20
>Note: For .NET Core projects you can use a standard Linux based Codefresh account. See[our example]({{site.baseurl}}/docs/example-catalog/ci-examples/dotnet/).
22
-
Codefresh Windows pipelines support the following Codefresh steps:
>Please refer to our[steps documentation]({{site.baseurl}}/docs/pipelines/steps/) to learn more about each of them.
26
24
27
25
##Example
28
26
29
27
In this example we'll perform the following steps:
30
-
28
+
31
29
- Clone our git repository and build a .NET Framework image.
32
-
33
30
- Run our dotnet unit tests and according to the results annotate the image accordingly.
34
-
35
31
- Push to Dockerhub if our tests have passed.
36
32
37
33
```yaml
@@ -74,10 +70,27 @@ steps:
74
70
tag:'{% raw %}${{CF_BRANCH_TAG_NORMALIZED}}{% endraw %}'
75
71
registry:dockerhub
76
72
77
-
```
73
+
```
74
+
75
+
##Windows docker image compatibility
76
+
77
+
You can receive the following error in your Windows pipeline:
78
+
79
+
`The container operating system does not match the host operating system.`
80
+
81
+
Windows docker images are only compatible with the corresponding release version of the host OS. You are not able to use a newer release version of a Windows container on an older release of Windows.
82
+
83
+
Please ensure that the image version used corresponds to the the node Windows release. For example:
84
+
85
+
`FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019` is version 1809.
86
+
87
+
`FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-1909` is version 1909.
88
+
89
+
Please reach out to the support team if you're unsure which Windows release you're using.
78
90
79
91
##Related articles
80
-
[Introduction to pipelines]({{site.baseurl}}/docs/pipelines/introduction-to-codefresh-pipelines/)
92
+
93
+
[Introduction to pipelines]({{site.baseurl}}/docs/pipelines/introduction-to-codefresh-pipelines/)
Copy file name to clipboardExpand all lines: _docs/integrations/docker-registries/amazon-ec2-container-registry.md
+93-62Lines changed: 93 additions & 62 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,23 +11,22 @@ toc: true
11
11
12
12
##Set up ECR integration for IAM user
13
13
14
-
1. In the Codefresh UI, on the toolbar, click the**Settings** icon, and then from the sidebar, select[**Pipeline Integrations**](https://g.codefresh.io/account-admin/account-conf/integration){:target="\_blank"}.
14
+
1. In the Codefresh UI, on the toolbar, click the**Settings** icon, and then from the sidebar, select[**Pipeline Integrations**](https://g.codefresh.io/account-admin/account-conf/integration){:target="\_blank"}.
15
15
1. Select**Docker Registries** and then click**Configure**.
16
16
1. From the**Add Registry Provider** dropdown, select**Amazon ECR**.
17
-
1. Define the following:
18
-
***Registry name**: A unique name for this configuration.
1. To verify the connection details, click**Test Connection**.
33
32
1. To apply the changes, click**Save**.
@@ -36,24 +35,24 @@ Codefresh makes sure to automatically refresh the AWS token for you.
36
35
37
36
For more information on how to obtain the needed tokens, read the[AWS documentation](http://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys){:target="_blank"}.
38
37
39
-
>**NOTE**
40
-
You must have an active registry set up in AWS.<br /><br />
41
-
Amazon ECR push/pull operations are supported with two permission options: user-based and resource-based.
42
-
38
+
>**NOTE**
39
+
>You must have an active registry set up in AWS.
40
+
>
41
+
>Amazon ECR push/pull operations are supported with two permission options: user-based and resource-based.
43
42
44
-
* Identity-based policies
43
+
* Identity-based policies
45
44
User account must apply`AmazonEC2ContainerRegistryPowerUser` policy (or custom based on that policy).
46
45
For more information and examples, click[here](http://docs.aws.amazon.com/AmazonECR/latest/userguide/ecr_managed_policies.html){:target="_blank"}.
47
-
* Resource-based policy
46
+
* Resource-based policy
48
47
Users with resource-based policies must be allowed to call`ecr:GetAuthorizationToken` before they can authenticate to a registry, and push or pull any images from any Amazon ECR repository, than you need provide push/pull permissions to specific registry.
49
48
For more information and examples, click[here](http://docs.aws.amazon.com/AmazonECR/latest/userguide/RepositoryPolicies.html){:target="_blank"}.
50
49
51
-
52
50
##Set up ECR integration for service account
53
51
54
-
Setting up ECR integration for a service account applies to accounts with the Codefresh Runner installation.
52
+
Setting up ECR integration for a service account applies to accounts with the Codefresh Runner installation.
55
53
56
54
###Kubernetes service account setup
55
+
57
56
To use an IAM role, you must set up a Kubernetes service account, as described in the[AWS Documentation](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html){:target="\_blank"}.
58
57
You can define the service account at four different levels, based on the required priority. The levels are listed below in ascending order of priority:
59
58
@@ -80,37 +79,70 @@ runtimeScheduler:
80
79
* Trigger
81
80
The Trigger-level service account has the highest priority. Define the service account as part of the trigger settings for the specific pipeline (Workflow > Triggers (modify or add) > Advanced Options).
82
81
83
-
84
82
###How to
85
83
86
-
#####Before you begin
84
+
####Before you begin
85
+
87
86
* Define a Kubernetes service account for the runtime, account, pipeline, or pipeline-trigger
88
87
89
-
#####How to
88
+
####Steps
90
89
91
-
1. In the Codefresh UI, on the toolbar, click the**Settings** icon, and then from the sidebar, select[**Pipeline Integrations**](https://g.codefresh.io/account-admin/account-conf/integration){:target="\_blank"}.
90
+
1. In the Codefresh UI, on the toolbar, click the**Settings** icon, and then from the sidebar, select[**Pipeline Integrations**](https://g.codefresh.io/account-admin/account-conf/integration){:target="\_blank"}.
92
91
1. Select**Docker Registries** and then click**Configure**.
93
92
1. From the**Add Registry Provider** dropdown, select**Amazon ECR**.
94
93
1. Do the following:
95
-
***Registry name**: Enter a unique name for this configuration.
96
-
***Region**: Select the AWS region.
97
-
* Select**Resolve credentials from servce account**.
98
-
99
-
The Access Key ID and Secret Access Key fields are disabled.
1. In the Codefresh[integration page](https://g.codefresh.io/account-admin/account-conf/integration/registryNew) select 'Add Registry Provider > Other Registries'
127
+
1. Enter any Registry name
128
+
1. Put "AWS" in the Username field
129
+
1. Run the following command from the AWS Console:
1. Test the connectionif needed and save the changes.
114
146
115
147
## Pushing Docker images to Amazon ECR
116
148
@@ -121,62 +153,61 @@ There are two ways to push images:
121
153
122
154
For more details on how to push a Docker imagein a pipeline see the [build and push example]({{site.baseurl}}/docs/example-catalog/ci-examples/build-and-push-an-image/).
123
155
124
-
125
-
126
156
### Manually promoting an image
127
157
128
158
<!-- may need to rewrite this -->
129
159
130
160
The**Images** view has an option to manually push images to a registry.
131
161
You need to specify the repository name as the name of your repository assetin ECR, asin the example below.