Skip to content

Commit

Permalink
[CI] Enable markdown linter and fix reported issues
Browse files Browse the repository at this point in the history
Signed-off-by: Patrice Chalin <pchalin@gmail.com>
  • Loading branch information
chalin committed Aug 9, 2023
1 parent 6a73b5d commit 53a3556
Show file tree
Hide file tree
Showing 32 changed files with 243 additions and 198 deletions.
14 changes: 6 additions & 8 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
---
name: Linter
name: Check

# Run this workflow on every PR to main
on:
pull_request:
branches:
- main

jobs:
Setup:
Expand All @@ -14,20 +11,21 @@ jobs:
- uses: actions/checkout@v3
- name: Setup
run: make setup
Lint:

Markdown:
runs-on: ubuntu-latest
needs: Setup
steps:
- uses: actions/checkout@v3
- name: Lint
run: make lint
- run: npm run check:markdown

Spelling:
runs-on: ubuntu-latest
needs: Setup
steps:
- uses: actions/checkout@v3
- name: Spelling
run: make spelling

Links:
runs-on: ubuntu-latest
needs: Setup
Expand Down
5 changes: 5 additions & 0 deletions .markdownlint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"line-length": false,
"no-inline-html": false,
"ul-style": false
}
File renamed without changes.
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
# TAG Environmental Sustainability 🌳🌍♻️

Welcome to the Environmental Sustainability Technical Advisory Group. This TAG works with the open source community to define environmental sustainability factors for the cloud native landscape, incubate and advocate open source projects to observe and measure Cloud Native infrastructure carbon footprint, optimize and eventually reduce carbon footprint and promote Cloud Native infrastructure to combat environmental challenges.
Welcome to the Environmental Sustainability Technical Advisory Group. This TAG works with the open source community to define environmental sustainability factors for the cloud native landscape, incubate and advocate open source projects to observe and measure Cloud Native infrastructure carbon footprint, optimize and eventually reduce carbon footprint and promote Cloud Native infrastructure to combat environmental challenges.

We want to raise awareness of environmental sustainability as a key element of open source development and support projects which foster an understanding of energy drivers.
We want to raise awareness of environmental sustainability as a key element of open source development and support projects which foster an understanding of energy drivers.
All activities should positively impact the community by changing mindset, increasing efficiency, and putting sustainability on everyone's agenda.

The [TAG Environmental Sustainability Charter](charter.md) further outlines the scope of our group activities as well as the goals and intended deliverables.

## Glossary

Within our [glossary](./glossary/glossary.md) you can find common wording, abbreviations and definitions we might use frequently.
Within our [glossary](./glossary/glossary.md) you can find common wording, abbreviations and definitions we might use frequently.
In case you are missing something or is unclear, your contribution is more than welcome!

## Website
Expand All @@ -23,11 +23,11 @@ In addition to what you can find in this repository, the TAG Environmental Susta
Ways to add to your calendar:
- Import the TAG Environmental Sustainability CNCF calendar feed into your calendar from following URL: [https://icalfilter.com/j9732u68l2](https://icalfilter.com/j9732u68l2). [Subscribe to someone’s Google Calendar](https://support.google.com/calendar/answer/37100?hl=en&co=GENIE.Platform%3DDesktop). In this case your calendar will be automatically updated once new events are published.
- Download the .ics file by navigating directly to the following URL in the web browser: [https://icalfilter.com/j9732u68l2](https://icalfilter.com/j9732u68l2). Note: in this case automatic updates are NOT supported.

Meeting notes & agenda [here](https://docs.google.com/document/d/1TkmMyXJABC66NfYmivnh7z8Y_vpq9f9foaOuDVQS_Lo/edit#)
* [Mailing list](https://lists.cncf.io/g/cncf-tag-env-sustainability/) via mailto:cncf-tag-env-sustainability@lists.cncf.io
* [Mailing list](https://lists.cncf.io/g/cncf-tag-env-sustainability/) via [cncf-tag-env-sustainability@lists.cncf.io](mailto:cncf-tag-env-sustainability@lists.cncf.io)
* Slack: [#tag-environmental-sustainability](https://cloud-native.slack.com/archives/C03F270PDU6) slack channel on slack.cncf.io
* Social Media:
* Social Media:
* Twitter: [@CNCFEnvTAG](https://twitter.com/CNCFEnvTAG)

### TAG Environmental Sustainability Co-Chairs
Expand Down
20 changes: 12 additions & 8 deletions charter.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,37 +6,41 @@ The Paris Climate Accords outline the link between economic activity, greenhouse

References:

* https://www.iea.org/reports/net-zero-by-2050
* https://www.whitehouse.gov/wp-content/uploads/2021/10/US-Long-Term-Strategy.pdf
* https://www.worldbank.org/en/news/feature/2022/05/23/what-you-need-to-know-about-net-zero
* <https://www.iea.org/reports/net-zero-by-2050>
* <https://www.whitehouse.gov/wp-content/uploads/2021/10/US-Long-Term-Strategy.pdf>
* <https://www.worldbank.org/en/news/feature/2022/05/23/what-you-need-to-know-about-net-zero>

## Mission Statement

This TAG's goal is to advocate for, develop, support, and help evaluate environmental sustainability initiatives in cloud native technologies. This TAG will identify values and possible incentives for service providers to reduce their consumption and carbon footprint through cloud native tooling.

## Responsibilities & Deliverables

### Background
We recognize that:

We recognize that:

- the trade off between reducing resource consumption and higher performance is hard to balance
- there is a lack of well supported and documented approaches for evaluating the environmental sustainability of cloud native projects in their default or optimized configurations


### In-Scope

- Identify, define, and develop tooling to assess and improve environmental sustainability approaches, including
- Quantify the energy consumption of cloud native implementations individually as well as in common integration patterns
- Recommendations and strategies to develop, package, distribute, deploy, and operate cloud native implementations to reduce energy consumption and carbon as well as the various environments they operate in and which impact their consumption
- Capabilities, benchmarks, and processes to evaluate technological and architectural health of projects
- Quantify the energy consumption of cloud native implementations individually as well as in common integration patterns
- Recommendations and strategies to develop, package, distribute, deploy, and operate cloud native implementations to reduce energy consumption and carbon as well as the various environments they operate in and which impact their consumption
- Capabilities, benchmarks, and processes to evaluate technological and architectural health of projects
- Community outreach and engagement on the work of this TAG
- Collaboration with other environmental or sustainability organizations, initiatives, activities, and efforts that may fall outside of the CNCF (Cloud Native Computing Foundation)

### Out of scope

- Form an umbrella organization beyond the CNCF
- Establish a compliance and standards body beyond the CNCF space
- Evaluate individual company infrastructures
- Focus outside of cloud native technologies, according to the [CNCF Cloud Native definition](https://github.com/cncf/toc/blob/main/DEFINITION.md)

## Deliverables to TOC

- Landscape for carbon and energy efficiency in the form of metrics, measurements, and management techniques
- Environmental sustainability recommendations and optimizations to new and existing projects within the landscape
- Reports on gaps in the environmental sustainability coverage of the landscape
Expand Down
43 changes: 24 additions & 19 deletions checks/link-config.json
Original file line number Diff line number Diff line change
@@ -1,21 +1,26 @@
{
"aliveStatusCodes": [200,206,402],
"fallbackRetryDelay": "5s",
"replacementPatterns": [
{
"pattern": "^/",
"replacement": "{{BASEURL}}/"
"aliveStatusCodes": [200, 206, 402],
"fallbackRetryDelay": "5s",
"ignorePatterns": [
{
"pattern": "^https://twitter"
}
],
"replacementPatterns": [
{
"pattern": "^/",
"replacement": "{{BASEURL}}/"
}
],
"httpHeaders": [
{
"urls": ["https://docs.github.com/"],
"headers": {
"Accept-Encoding": "zstd, br, gzip, deflate"
}
],
"httpHeaders": [
{
"urls": ["https://docs.github.com/"],
"headers": {
"Accept-Encoding": "zstd, br, gzip, deflate"
}
}
],
"retryCount": 3,
"retryOn429": true,
"timeout": "20s"
}
}
],
"retryCount": 3,
"retryOn429": true,
"timeout": "20s"
}
9 changes: 3 additions & 6 deletions checks/links.sh
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
#!/usr/bin/env bash

npm install -g markdown-link-check
git fetch origin main:main
for file_name in $(git diff --name-only $HEAD main); do
if [[ $file_name == *".md" ]]; then
npx markdown-link-check --config ./checks/link-config.json --progress --verbose "$file_name"
fi
npm list markdown-link-check || npm install markdown-link-check
for file_name in $(git diff --name-only $HEAD main | grep '\.md$'); do
npx markdown-link-check --config ./checks/link-config.json --progress --verbose "$file_name"
done
4 changes: 0 additions & 4 deletions checks/lint-config.json

This file was deleted.

9 changes: 0 additions & 9 deletions checks/lint.sh

This file was deleted.

7 changes: 2 additions & 5 deletions checks/spelling-config.json → cspell.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
{
"version": "0.1",
"version": "0.2",
"language": "en",
"ignorePaths": [
"**/.github/**",
"**/ci/**"
],
"ignorePaths": [],
"words": [
"CNCF",
"K8s",
Expand Down
39 changes: 17 additions & 22 deletions glossary/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Intro

This glossary aims to define the wording used within our Technical Advisory Group (TAG) for environmental sustainability. It doesn't claim to be holistically complete and therefore provides additional resources where needed.
This glossary aims to define the wording used within our Technical Advisory Group (TAG) for environmental sustainability. It doesn't claim to be holistically complete and therefore provides additional resources where needed.

> This glossary is also a living artifact that changes and is edited over time.
Expand All @@ -12,23 +12,22 @@ This glossary aims to define the wording used within our Technical Advisory Grou

#### **Carbon or Carbon Dioxide (CO2)**

Carbon Dioxide commonly just named carbon is a colorless, odorless gas, that is released from burning fossil fuels, such as coal, oil, and natural gas.
CO2 emissions are fundamentally a natural process, but one that has been exacerbated by the burning of natural resources for energy production or logistics to such an extent that it is now a major factor in climate change. Depending on how the supply chain of hardware (e.g. computer chips, cables etc.) and software (e.g. digital services like cloud computing, file sharing etc.) production/services is structured, CO2 gets emitted.
Carbon Dioxide commonly just named carbon is a colorless, odorless gas, that is released from burning fossil fuels, such as coal, oil, and natural gas.
CO2 emissions are fundamentally a natural process, but one that has been exacerbated by the burning of natural resources for energy production or logistics to such an extent that it is now a major factor in climate change. Depending on how the supply chain of hardware (e.g. computer chips, cables etc.) and software (e.g. digital services like cloud computing, file sharing etc.) production/services is structured, CO2 gets emitted.

#### **Carbon Diet**

Actions to reduce the output of CO2 to reduce the impact on the environment.


#### **Carbon Footprint**

Is the total amount of greenhouse gasses, often carbon dioxide, that a person, family, company, organization, or building (like a data center) releases to the environment.
Is the total amount of greenhouse gasses, often carbon dioxide, that a person, family, company, organization, or building (like a data center) releases to the environment.
This includes the release of GHG through direct use (e.g. the energy consumption of a data center) and indirect use (e.g. the energy required to produce servers).

#### **Climate or Carbon Neutrality**

Often used by organizations and companies to express that they equalize the cause of carbon pollution they generate.
This typically happens by buying negative carbon emissions from organizations that really saved carbon or are net-zero or even reduce more carbon than they produce.
Often used by organizations and companies to express that they equalize the cause of carbon pollution they generate.
This typically happens by buying negative carbon emissions from organizations that really saved carbon or are net-zero or even reduce more carbon than they produce.
However, it is important to understand that this is only a compensation and does not have to imply a new product development leading to more sustainability. Please also read about the term "Net Zero" as both terms are often mixed or misleadingly used.

### E
Expand All @@ -44,44 +43,43 @@ Scope 1: direct emissions: the CO2 output of the vehicles owned by the company
Scope 2: indirect emissions: the power consumption of a data center, that causes emissions by the production of electricity
Scope 3: indirect emissions, that not directly can be changed: delivery chain caused CO2 pollution


#### **Embodied (Carbon) Emissions**

Embodied, sometimes referred to as Embedded, Carbon Emissions are all emissions caused during a good's production.
Embodied, sometimes referred to as Embedded, Carbon Emissions are all emissions caused during a good's production.
That can include anything from transportation, storage, heating, the production of other goods to finish this good and so on.

#### **Environmental Sustainability**

Sustainability is the concept of a social, economical and environmental activity that, in simple terms, leaves the ecosystem as it found it.
Sustainability is the concept of a social, economical and environmental activity that, in simple terms, leaves the ecosystem as it found it.
Environmental sustainability focuses on the ecological impact of our doings and how we can improve our actions to reduce or eliminate our negative impact on nature, earth, and finally humanity.

### G

#### **Green House Gas (GHG)**

Any kind of gasses caused by nature or human activities that trap heat in the atmosphere. GHG includes carbon dioxide, methane, ozone and others.
These gasses are called greenhouse gas because they have the same effect as a greenhouse: the sunlight can enter the house and part is reflected back, but it can‘t leave the greenhouse fully because the roof prevents the heat from escaping.
Any kind of gasses caused by nature or human activities that trap heat in the atmosphere. GHG includes carbon dioxide, methane, ozone and others.
These gasses are called greenhouse gas because they have the same effect as a greenhouse: the sunlight can enter the house and part is reflected back, but it can‘t leave the greenhouse fully because the roof prevents the heat from escaping.
This causes the inside of a greenhouse to get hotter and hotter, the same as what’s going on with the earth. See also: Emissions.

### N

#### **Net Zero**

Stands for zero-carbon emission. This means that a company that causes carbon emissions needs to store or neutralize the same amount of carbon.
Stands for zero-carbon emission. This means that a company that causes carbon emissions needs to store or neutralize the same amount of carbon.
In the best case scenario, an organization doesn‘t cause carbon pollution at all.

### O

#### **Operational Carbon Emission**

The amount of carbon emitted during the active in-use phase, typical examples are buildings like data centers, or (if measurable)these can be also smaller elements like servers.
The amount of carbon emitted during the active in-use phase, typical examples are buildings like data centers, or (if measurable)these can be also smaller elements like servers.
Per definition, operational carbon emissions include the usage, management and maintenance.

### P

#### **Power Usage Effectiveness (PUE)**

The PUE describes how efficiently a data center uses energy. It defines how much energy is used by the computing equipment vs the overall power consumption of the data center.
The PUE describes how efficiently a data center uses energy. It defines how much energy is used by the computing equipment vs the overall power consumption of the data center.
An ideal PUE is 1.0. It is also a global standard under the ISO/IEC 30134-2:2016.

PUE is calculated either through:
Expand All @@ -92,8 +90,8 @@ Total Facility Energy / IT Equipment Energy

#### **Server Idle Energy Coefficiency (SIEC)**

Developed by the research project LEAP and is done by measuring the server energy consumption. What is relevant here is the continuous energy consumption of the server VS. the actually required energy by the chip.
This mainly depends on the configuration or modus of the server power management. Very simplified, it's the SIEC calculated by the energy wasted during idle time decided by the energy consumption in total.
Developed by the research project LEAP and is done by measuring the server energy consumption. What is relevant here is the continuous energy consumption of the server VS. the actually required energy by the chip.
This mainly depends on the configuration or modus of the server power management. Very simplified, it's the SIEC calculated by the energy wasted during idle time decided by the energy consumption in total.
The higher the number (given as %) the worse it is.

## Abbreviations
Expand All @@ -104,10 +102,7 @@ PUE - Power Usage Effectiveness

SIEC - Server Idle Energy Coefficiency




## Additional Resources

* [1] Glossary of Climate Change - https://www.wikiwand.com/en/Glossary_of_climate_change
* [2] Climate Change Vocabulary - https://www.health.state.mn.us/communities/environment/climate/docs/film/vocab_list.pdf
* [1] Glossary of Climate Change - <https://www.wikiwand.com/en/Glossary_of_climate_change>
* [2] Climate Change Vocabulary - <https://www.health.state.mn.us/communities/environment/climate/docs/film/vocab_list.pdf>
Loading

0 comments on commit 53a3556

Please sign in to comment.