-
Notifications
You must be signed in to change notification settings - Fork 541
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cleanup principles #209
Cleanup principles #209
Conversation
A great analogy for this is the shipping container. | ||
Just like how Standard Containers are a fundamental unit of software delivery, shipping containers are a fundamental unit of physical delivery. | ||
The goal of a Standard Container is to encapsulate a software component and | ||
all its dependencies in a format that is self-describing and portable, so that |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Markdown policy is one sentence per line (which is where the long lines from the original came from ;).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can switch it if people want, I'm just used to the docker practice of trying not to span 80 chars. No biggie.
On Fri, Oct 02, 2015 at 06:48:28AM -0700, Doug Davis wrote:
+1 to this.
I still think it would be nice to have more clarity about what |
@duglin across the whole doc, we do formatting of a sentence on each line (no line wraps in a sentence). |
okie dokie - one sentence per line. |
A great analogy for this is the shipping container. | ||
Just like how Standard Containers are a fundamental unit of software delivery, shipping containers are a fundamental unit of physical delivery. | ||
1. configuration file formats | ||
2. a set of standard operations |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
wondered if you were going to touch this, as it bothered you some weeks ago
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
well, this round is more about clean-up - with just a touch of clarity. The entire 'standard operations' thing is still a bit of a mystery to me since I don't know how you define an operation w/o defining something like an interface or API :-)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fair
all-in-all, I'm not opposed. The traditional container is referenced early, but then the similarities are expressed in the sections. For verbosity sake, every 1:1 analogy is not needed. |
Looks good overall. @crosbymichael @philips PTAL |
Both types of containers are INFRASTRUCTURE-AGNOSTIC: they can be transported to thousands of facilities around the world, and manipulated by a wide variety of equipment. | ||
A shipping container can be packed in a factory in Ukraine, transported by truck to the nearest routing center, stacked onto a train, loaded into a German boat by an Australian-built crane, stored in a warehouse at a US facility, etc. | ||
Similarly, a standard container can be bundled on my laptop, uploaded to S3, downloaded, run and snapshotted by a build server at Equinix in Virginia, uploaded to 10 staging servers in a home-made Openstack cluster, then sent to 30 production instances across 3 EC2 regions. | ||
Standard Containers are INFRASTRUCTURE-AGNOSTIC: they can be run in any OCI compliant infrastructure. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
s/OCI compliant infrastructure./OCI supported infrastructure.
This kinda makes it sound like we are going to have compliance testing for hardware or something like that. The burden would be on us or the runtimes to support the infrastructure, not a burden on the infrastructure providers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
|
||
## 4. Designed for automation | ||
|
||
Because they offer the same standard operations regardless of content and infrastructure, Standard Containers, just like their physical counterparts, are extremely well-suited for automation. | ||
In fact, you could say automation is their secret weapon. | ||
Standard Containers are DESIGNED FOR AUTOMATION: because they offer the same standard operations regardless of content and infrastructure, Standard Containers, are extremely well-suited for automation. In fact, you could say automation is their secret weapon. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
one sentence per line, please
couple of nits, but LGTM |
fixed the multiple sentences per line issues that @vbatts found. |
LGTM |
A shipping container can be packed in a factory in Ukraine, transported by truck to the nearest routing center, stacked onto a train, loaded into a German boat by an Australian-built crane, stored in a warehouse at a US facility, etc. | ||
Similarly, a standard container can be bundled on my laptop, uploaded to S3, downloaded, run and snapshotted by a build server at Equinix in Virginia, uploaded to 10 staging servers in a home-made Openstack cluster, then sent to 30 production instances across 3 EC2 regions. | ||
Standard Containers are INFRASTRUCTURE-AGNOSTIC: they can be run in any OCI supported infrastructure. | ||
For example, a standard container can be bundled on a laptop, uploaded to S3, downloaded, run and snapshotted by a build server at Equinix in Virginia, uploaded to 10 staging servers in a home-made OpenStack cluster, then sent to 30 production instances across 3 EC2 regions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is inappropriate to mention specific infrastructure since someone will always be left out of such examples. Suggest rewording (e.g. "S3" = "cloud storage", OpenStack = "private cloud", "EC2 regions" = "public cloud regions"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good point.
On Wed, Oct 7, 2015 at 12:36 PM, Ross Gardler notifications@github.com
wrote:
In principles.md
#209 (comment):3. Infrastructure-agnostic
-Both types of containers are INFRASTRUCTURE-AGNOSTIC: they can be transported to thousands of facilities around the world, and manipulated by a wide variety of equipment.
-A shipping container can be packed in a factory in Ukraine, transported by truck to the nearest routing center, stacked onto a train, loaded into a German boat by an Australian-built crane, stored in a warehouse at a US facility, etc.
-Similarly, a standard container can be bundled on my laptop, uploaded to S3, downloaded, run and snapshotted by a build server at Equinix in Virginia, uploaded to 10 staging servers in a home-made Openstack cluster, then sent to 30 production instances across 3 EC2 regions.
+Standard Containers are INFRASTRUCTURE-AGNOSTIC: they can be run in any OCI supported infrastructure.
+For example, a standard container can be bundled on a laptop, uploaded to S3, downloaded, run and snapshotted by a build server at Equinix in Virginia, uploaded to 10 staging servers in a home-made OpenStack cluster, then sent to 30 production instances across 3 EC2 regions.It is inappropriate to mention specific infrastructure since someone will
always be left out of such examples. Suggest rewording (e.g. "S3" = "cloud
storage", OpenStack = "private cloud", "EC2 regions" = "public cloud
regions"—
Reply to this email directly or view it on GitHub
https://github.com/opencontainers/specs/pull/209/files#r41413405.
@rgardler fixed |
LGTM ping @crosbymichael @philips @LK4D4 @vishh |
waiting for one more wording switch |
done |
I didn't really change much, just moved somes stuff around and expanded a little more in number 5. I moved all of the physical shipping container stuff to just the into because while its a cute analogy, repeating it over and over just got in the way of the real point - and by number 5 we endedup having more text about shipping containers than our containers - which was just weird. Signed-off-by: Doug Davis <dug@us.ibm.com>
Shipping containers can be lifted, stacked, locked, loaded, unloaded and labelled. | ||
Similarly, Standard Containers can be created, started, and stopped using standard container tools (what this spec is about); copied and snapshotted using standard filesystem tools; and downloaded and uploaded using standard network tools. | ||
Standard Containers define a set of STANDARD OPERATIONS. | ||
They can be created, started, and stopped using standard container tools; copied and snapshotted using standard filesystem tools; and downloaded and uploaded using standard network tools. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we add more clarity here? What is required for hosting these containers to come up with standard network tools? Will OCI define APIs for these purpose?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On Wed, Oct 07, 2015 at 10:12:46AM -0700, Vish Kannan wrote:
+They can be created, started, and stopped using standard
container tools; copied and snapshotted using standard filesystem
tools; and downloaded and uploaded using standard network tools.Can we add more clarity here? What is required for hosting these
containers to come up with standard network tools? Will OCI define
APIs for these purpose?
Can we punt on this for now? I think transfering these files with
tar/Nginx/curl, or tar/netcat, or IPFS, etc., etc., should be fine.
But this has been a hot-button issue in the past, and I'd rather avoid
having discussion about that stall this rewording PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The entire "standard operations" concept is one I'm struggling with and plan on opening a PR on once I get formulate a coherent proposal in my head. So for now I'd prefer if this PR just focused on cleaning up the docs - leaving the hard (potentially controversial) changes for more focused PRs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah. for now, this is just carry over from the prior wording, but this is the fuzziest of terms. Let's clear it up in another PR.
cool. |
I didn't really change much, just moved somes stuff around and expanded
a little more in number 5.
I moved all of the physical shipping container stuff to just the into
because while its a cute analogy, repeating it over and over just got
in the way of the real points - and by number 5 we ended up having more text
about shipping containers than our containers - which was just weird.
Signed-off-by: Doug Davis dug@us.ibm.com