The main reason for this is to fix the links in the output docs, which currently all 404.
This upgrades pandoc to 3.1, which isn't the latest, due to a regression in the relative links between markdown files.
I pulled out the "header.html" logic, injected the title directly, and configured the build to embed images into the output doc for better portability (and the ability to generate dev docs).
Signed-off-by: Brandon Mitchell <git@bmitch.net>
This changes pins golangci-lint to v1.55.2 for Go v1.20 to resolve CI
issues where golangci-lint v1.56.1 requires Go v1.21 or higher.
Signed-off-by: Austin Vazquez <macedonv@amazon.com>
This avoids a potential foot gun, where a future md file in a
sub directory would match the wildcard in the shell, and not pass
the expression to the linter.
Signed-off-by: Brandon Mitchell <git@bmitch.net>
- Remove/replace stale references from hacking doc.
- Add spacing for markdown.
- Add code block language for syntax highlighting.
- Remove leading "$ " from commands without output.
- Move links to end.
- Switch to automatically generated help in Makefile.
Signed-off-by: Brandon Mitchell <git@bmitch.net>
The artifact manifest does not confer any additional benefits beyond the
existing image manifest. Drop it for the sake of backward compatibility.
Remove references to artifact.md, regenerate graph.
Signed-off-by: Jon Johnson <jon.johnson@chainguard.dev>
This should be equivalent to the .travis-ci workflow, but run
in GitHub actions. I am using the exact commit of the v1 release,
as that is considered safer practice than the tag/release itself.
Signed-off-by: vsoch <vsoch@users.noreply.github.com>
Since READLINK(1) varies across platforms, namely darwin version does
not have the `-f` flag, then don't rely on the shell. Especially since
gnu make already has this as a builtin function.
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
Add documentation about how to convert from an OCI image configuration
to an OCI runtime configuration. In particular, describe precisely what
fields need to be filled given a particular configuration.
The fields have been grouped into several categories, because some of
the image fields are not as well-thought-out as others (such as the
resource limitation fields, which should really be decided by the user
not by the image creator). In addition, some fields (such as Volumes)
cannot be understood by a generic configuration converter.
In addition, the annotation org.opencontainers.imageSpec.exposedPorts
has been defined in order to allow for hinting to runtimes what ports
are exposed by a container. The same for
org.containers.imageSpec.stopSignal.
Signed-off-by: Aleksa Sarai <asarai@suse.de>
Fixes #247
this makes an ephemeral header that gets included into the html doc that
bases the images path to pull from the same tag on github.
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
With #586 there are math spec characters introduced. This required a few
new latex packages and specifying xelatex.
Fixes #596
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
It has come up a number of times that the manifest-list, while
intentionally suited for pointing to a list of manifests, is intended to
be a general index and entry-point. During the image-layout addition of
`/index.json`, replacing the ./refs/ directory, it was recommended that
we finally make this distinction in the manifest-list as well.
This rename does not affect the compatibility with the docker v2.s2
manifest-list, as it is primarily a semantic change.
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
From the 2017-01-25 call we agreed to keep the manifest list as the
entry point for accessing objects. The index concept is only a more
generic use of the manifest-list.
https://github.com/opencontainers/image-spec/pull/438#issuecomment-275252735
This change uses the manifest-list as an index that allows
implementations to work around needing to walk/traverse the `./refs/`
directory.
As the `./refs/` directory was REQUIRED to exist, with its removal this
`index.json` is REQUIRED to be present.
This includes validating the image-layout example.
This also makes `validate-examples` automatically update `schema-fs` if
there have been changes to the JSON schema.
Obsoletes #438
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
specs-go acts as a package. No need to have vendoring in here as it
would just cause major pain to people using the specs Go library.
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
As I suggested in the PR landing these blocks [1,2,3]. I've shifted
the extensibility section to a separate considerations.md, since it's
a generic policy that applies to both our manifest and manifest-list.
The extensibility requirements might arguably apply to our other JSON
types as well (like annotations, which were recently DRYed up in
f15a268, annotations: make a designated doc and DRY a bit, 2016-12-15,
#501). The new extensibility section sets the stage for that, but
I've left the other types off this commit to focus on making the
current requirements more DRY without changing the specified behavior.
My personal preference would be to have separate canonicalization.md
and extensibility.md files, but Jonathan wanted the single file:
On Mon, Oct 10, 2016 at 09:22:46AM -0700, Jonathan Boulle wrote [4]:
> Ehh, I preferred it where it was - now worried about death by a
> thousand files (extensibility, canonicalization, etc etc). Can we
> combine them (into a generic "considerations" document or similar),
> or just put this back?
[1]: https://github.com/opencontainers/image-spec/pull/164#issuecomment-243952187
[2]: https://github.com/opencontainers/image-spec/pull/164#issuecomment-244279771
[3]: https://github.com/opencontainers/image-spec/pull/164#r77871859
[4]: https://github.com/opencontainers/image-spec/pull/340#issuecomment-252670278
Signed-off-by: W. Trevor King <wking@tremily.us>
This fixes the `glide-vc` command to use the glide.lock file to resolve
the dependencies, ensuring that we don't delete test dependencies. We
also fix a sed line to working correctly on other platforms as well
ensure that the tools get updated.
Signed-off-by: Stephen J Day <stephen.day@docker.com>
These have been spun off into [1].
# glide.yaml
* Drop runtime-spec (the last reference was removed with
image/config.go).
* Drop cobra (the last references were removed with cmd/).
# HACKING
The http/FileSystem stuff still applies, since the JSON Schema
validation is staying in this repo. I've made it's earlier
oci-image-tool references more generic, and adopted the README's
recommended one sentence per line where I touched a line.
[1]: https://github.com/opencontainers/image-tools
Signed-off-by: W. Trevor King <wking@tremily.us>
Spun off from [1], now that we seem to have reached a consensus for
"SHOULD canonical JSON" there. I've set this up so we have space to
add canonicalization recommendations for other formats, although the
only other basic type discussed in this repository is a gzipped
tarball and that's more than I want to bite off at the moment ;).
[1]: https://github.com/opencontainers/image-spec/issues/259
Subject: manifest json fields order
Signed-off-by: W. Trevor King <wking@tremily.us>
The combined manifest/manifest-list document is long and unwieldy.
Furthermore, the Image Manifest is arguably more important (since the
Manifest List is optional), and so it should stand alone as a
first-class document.
Signed-off-by: Jonathan Boulle <jonathanboulle@gmail.com>
Before it was just using the latest image build, which was
1.13.2-4.fc23. With this change it will more explicitly use a tagged
version.
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>