diff options
| -rw-r--r-- | recipes-containers/skopeo/files/registries.conf | 25 | ||||
| -rw-r--r-- | recipes-containers/skopeo/files/storage.conf | 133 | ||||
| -rw-r--r-- | recipes-containers/skopeo/skopeo_git.bb | 9 |
3 files changed, 166 insertions, 1 deletions
diff --git a/recipes-containers/skopeo/files/registries.conf b/recipes-containers/skopeo/files/registries.conf new file mode 100644 index 00000000..ba6c3f6e --- /dev/null +++ b/recipes-containers/skopeo/files/registries.conf | |||
| @@ -0,0 +1,25 @@ | |||
| 1 | # This is a system-wide configuration file used to | ||
| 2 | # keep track of registries for various container backends. | ||
| 3 | # It adheres to TOML format and does not support recursive | ||
| 4 | # lists of registries. | ||
| 5 | |||
| 6 | # The default location for this configuration file is /etc/containers/registries.conf. | ||
| 7 | |||
| 8 | # The only valid categories are: 'registries.search', 'registries.insecure', | ||
| 9 | # and 'registries.block'. | ||
| 10 | |||
| 11 | [registries.search] | ||
| 12 | registries = ['docker.io', 'registry.fedoraproject.org', 'quay.io', 'registry.access.redhat.com', 'registry.centos.org'] | ||
| 13 | |||
| 14 | # If you need to access insecure registries, add the registry's fully-qualified name. | ||
| 15 | # An insecure registry is one that does not have a valid SSL certificate or only does HTTP. | ||
| 16 | [registries.insecure] | ||
| 17 | registries = [] | ||
| 18 | |||
| 19 | |||
| 20 | # If you need to block pull access from a registry, uncomment the section below | ||
| 21 | # and add the registries fully-qualified name. | ||
| 22 | # | ||
| 23 | # Docker only | ||
| 24 | [registries.block] | ||
| 25 | registries = [] | ||
diff --git a/recipes-containers/skopeo/files/storage.conf b/recipes-containers/skopeo/files/storage.conf new file mode 100644 index 00000000..818cfe8f --- /dev/null +++ b/recipes-containers/skopeo/files/storage.conf | |||
| @@ -0,0 +1,133 @@ | |||
| 1 | # This file is is the configuration file for all tools | ||
| 2 | # that use the containers/storage library. | ||
| 3 | # See man 5 containers-storage.conf for more information | ||
| 4 | # The "container storage" table contains all of the server options. | ||
| 5 | [storage] | ||
| 6 | |||
| 7 | # Default Storage Driver | ||
| 8 | driver = "overlay" | ||
| 9 | |||
| 10 | # Temporary storage location | ||
| 11 | runroot = "/var/run/containers/storage" | ||
| 12 | |||
| 13 | # Primary Read/Write location of container storage | ||
| 14 | graphroot = "/var/lib/containers/storage" | ||
| 15 | |||
| 16 | [storage.options] | ||
| 17 | # Storage options to be passed to underlying storage drivers | ||
| 18 | |||
| 19 | # AdditionalImageStores is used to pass paths to additional Read/Only image stores | ||
| 20 | # Must be comma separated list. | ||
| 21 | additionalimagestores = [ | ||
| 22 | ] | ||
| 23 | |||
| 24 | # Size is used to set a maximum size of the container image. Only supported by | ||
| 25 | # certain container storage drivers. | ||
| 26 | size = "" | ||
| 27 | |||
| 28 | # Path to an helper program to use for mounting the file system instead of mounting it | ||
| 29 | # directly. | ||
| 30 | #mount_program = "/usr/bin/fuse-overlayfs" | ||
| 31 | |||
| 32 | # OverrideKernelCheck tells the driver to ignore kernel checks based on kernel version | ||
| 33 | override_kernel_check = "true" | ||
| 34 | |||
| 35 | # mountopt specifies comma separated list of extra mount options | ||
| 36 | mountopt = "nodev" | ||
| 37 | |||
| 38 | # Remap-UIDs/GIDs is the mapping from UIDs/GIDs as they should appear inside of | ||
| 39 | # a container, to UIDs/GIDs as they should appear outside of the container, and | ||
| 40 | # the length of the range of UIDs/GIDs. Additional mapped sets can be listed | ||
| 41 | # and will be heeded by libraries, but there are limits to the number of | ||
| 42 | # mappings which the kernel will allow when you later attempt to run a | ||
| 43 | # container. | ||
| 44 | # | ||
| 45 | # remap-uids = 0:1668442479:65536 | ||
| 46 | # remap-gids = 0:1668442479:65536 | ||
| 47 | |||
| 48 | # Remap-User/Group is a name which can be used to look up one or more UID/GID | ||
| 49 | # ranges in the /etc/subuid or /etc/subgid file. Mappings are set up starting | ||
| 50 | # with an in-container ID of 0 and the a host-level ID taken from the lowest | ||
| 51 | # range that matches the specified name, and using the length of that range. | ||
| 52 | # Additional ranges are then assigned, using the ranges which specify the | ||
| 53 | # lowest host-level IDs first, to the lowest not-yet-mapped container-level ID, | ||
| 54 | # until all of the entries have been used for maps. | ||
| 55 | # | ||
| 56 | # remap-user = "storage" | ||
| 57 | # remap-group = "storage" | ||
| 58 | |||
| 59 | [storage.options.thinpool] | ||
| 60 | # Storage Options for thinpool | ||
| 61 | |||
| 62 | # autoextend_percent determines the amount by which pool needs to be | ||
| 63 | # grown. This is specified in terms of % of pool size. So a value of 20 means | ||
| 64 | # that when threshold is hit, pool will be grown by 20% of existing | ||
| 65 | # pool size. | ||
| 66 | # autoextend_percent = "20" | ||
| 67 | |||
| 68 | # autoextend_threshold determines the pool extension threshold in terms | ||
| 69 | # of percentage of pool size. For example, if threshold is 60, that means when | ||
| 70 | # pool is 60% full, threshold has been hit. | ||
| 71 | # autoextend_threshold = "80" | ||
| 72 | |||
| 73 | # basesize specifies the size to use when creating the base device, which | ||
| 74 | # limits the size of images and containers. | ||
| 75 | # basesize = "10G" | ||
| 76 | |||
| 77 | # blocksize specifies a custom blocksize to use for the thin pool. | ||
| 78 | # blocksize="64k" | ||
| 79 | |||
| 80 | # directlvm_device specifies a custom block storage device to use for the | ||
| 81 | # thin pool. Required if you setup devicemapper. | ||
| 82 | # directlvm_device = "" | ||
| 83 | |||
| 84 | # directlvm_device_force wipes device even if device already has a filesystem. | ||
| 85 | # directlvm_device_force = "True" | ||
| 86 | |||
| 87 | # fs specifies the filesystem type to use for the base device. | ||
| 88 | # fs="xfs" | ||
| 89 | |||
| 90 | # log_level sets the log level of devicemapper. | ||
| 91 | # 0: LogLevelSuppress 0 (Default) | ||
| 92 | # 2: LogLevelFatal | ||
| 93 | # 3: LogLevelErr | ||
| 94 | # 4: LogLevelWarn | ||
| 95 | # 5: LogLevelNotice | ||
| 96 | # 6: LogLevelInfo | ||
| 97 | # 7: LogLevelDebug | ||
| 98 | # log_level = "7" | ||
| 99 | |||
| 100 | # min_free_space specifies the min free space percent in a thin pool require for | ||
| 101 | # new device creation to succeed. Valid values are from 0% - 99%. | ||
| 102 | # Value 0% disables | ||
| 103 | # min_free_space = "10%" | ||
| 104 | |||
| 105 | # mkfsarg specifies extra mkfs arguments to be used when creating the base. | ||
| 106 | # device. | ||
| 107 | # mkfsarg = "" | ||
| 108 | |||
| 109 | # use_deferred_removal marks devicemapper block device for deferred removal. | ||
| 110 | # If the thinpool is in use when the driver attempts to remove it, the driver | ||
| 111 | # tells the kernel to remove it as soon as possible. Note this does not free | ||
| 112 | # up the disk space, use deferred deletion to fully remove the thinpool. | ||
| 113 | # use_deferred_removal = "True" | ||
| 114 | |||
| 115 | # use_deferred_deletion marks thinpool device for deferred deletion. | ||
| 116 | # If the device is busy when the driver attempts to delete it, the driver | ||
| 117 | # will attempt to delete device every 30 seconds until successful. | ||
| 118 | # If the program using the driver exits, the driver will continue attempting | ||
| 119 | # to cleanup the next time the driver is used. Deferred deletion permanently | ||
| 120 | # deletes the device and all data stored in device will be lost. | ||
| 121 | # use_deferred_deletion = "True" | ||
| 122 | |||
| 123 | # xfs_nospace_max_retries specifies the maximum number of retries XFS should | ||
| 124 | # attempt to complete IO when ENOSPC (no space) error is returned by | ||
| 125 | # underlying storage device. | ||
| 126 | # xfs_nospace_max_retries = "0" | ||
| 127 | |||
| 128 | # If specified, use OSTree to deduplicate files with the overlay backend | ||
| 129 | ostree_repo = "" | ||
| 130 | |||
| 131 | # Set to skip a PRIVATE bind mount on the storage home directory. Only supported by | ||
| 132 | # certain container storage drivers | ||
| 133 | skip_mount_home = "false" | ||
diff --git a/recipes-containers/skopeo/skopeo_git.bb b/recipes-containers/skopeo/skopeo_git.bb index 82d3f23c..f5a62313 100644 --- a/recipes-containers/skopeo/skopeo_git.bb +++ b/recipes-containers/skopeo/skopeo_git.bb | |||
| @@ -19,7 +19,11 @@ RDEPENDS_${PN} = " \ | |||
| 19 | libassuan \ | 19 | libassuan \ |
| 20 | " | 20 | " |
| 21 | 21 | ||
| 22 | SRC_URI = "git://github.com/containers/skopeo" | 22 | SRC_URI = " \ |
| 23 | git://github.com/containers/skopeo \ | ||
| 24 | file://storage.conf \ | ||
| 25 | file://registries.conf \ | ||
| 26 | " | ||
| 23 | 27 | ||
| 24 | SRCREV = "1cf1e06582142c522543560f2bc6d6756696e8ad" | 28 | SRCREV = "1cf1e06582142c522543560f2bc6d6756696e8ad" |
| 25 | PV = "v0.1.39-dev+git${SRCPV}" | 29 | PV = "v0.1.39-dev+git${SRCPV}" |
| @@ -68,6 +72,9 @@ do_install() { | |||
| 68 | 72 | ||
| 69 | install ${S}/src/import/skopeo ${D}/${sbindir}/ | 73 | install ${S}/src/import/skopeo ${D}/${sbindir}/ |
| 70 | install ${S}/src/import/default-policy.json ${D}/${sysconfdir}/containers/policy.json | 74 | install ${S}/src/import/default-policy.json ${D}/${sysconfdir}/containers/policy.json |
| 75 | |||
| 76 | install ${WORKDIR}/storage.conf ${D}/${sysconfdir}/containers/storage.conf | ||
| 77 | install ${WORKDIR}/registries.conf ${D}/${sysconfdir}/containers/registries.conf | ||
| 71 | } | 78 | } |
| 72 | 79 | ||
| 73 | INSANE_SKIP_${PN} += "ldflags" | 80 | INSANE_SKIP_${PN} += "ldflags" |
