From dfd1e0fa055f3dde9ef9ac8d456edb8555d052f7 Mon Sep 17 00:00:00 2001 From: Patrick Arminio Date: Sun, 5 Sep 2021 00:55:00 +0200 Subject: [PATCH] Move tweet actions to a new repo (#1211) --- .github/read-tweet-action/Dockerfile | 7 --- .github/read-tweet-action/action.yml | 11 ---- .github/read-tweet-action/read.py | 62 ------------------- .github/validate-tweet-action/Dockerfile | 13 ---- .github/validate-tweet-action/action.yml | 7 --- .github/validate-tweet-action/main.js | 13 ---- .../validate-tweet-action/package-lock.json | 52 ---------------- .github/validate-tweet-action/package.json | 16 ----- .github/workflows/release-check.yml | 4 +- .github/workflows/release.yml | 2 +- 10 files changed, 3 insertions(+), 184 deletions(-) delete mode 100644 .github/read-tweet-action/Dockerfile delete mode 100644 .github/read-tweet-action/action.yml delete mode 100644 .github/read-tweet-action/read.py delete mode 100644 .github/validate-tweet-action/Dockerfile delete mode 100644 .github/validate-tweet-action/action.yml delete mode 100644 .github/validate-tweet-action/main.js delete mode 100644 .github/validate-tweet-action/package-lock.json delete mode 100644 .github/validate-tweet-action/package.json diff --git a/.github/read-tweet-action/Dockerfile b/.github/read-tweet-action/Dockerfile deleted file mode 100644 index 78a56a218d..0000000000 --- a/.github/read-tweet-action/Dockerfile +++ /dev/null @@ -1,7 +0,0 @@ -FROM python:3.9-alpine - -RUN pip install markdown==3.3.4 beautifulsoup4==4.9.3 - -COPY . /action - -ENTRYPOINT ["python", "/action/read.py"] diff --git a/.github/read-tweet-action/action.yml b/.github/read-tweet-action/action.yml deleted file mode 100644 index 7f637fbbdb..0000000000 --- a/.github/read-tweet-action/action.yml +++ /dev/null @@ -1,11 +0,0 @@ -name: 'Strawberry Read Tweet Action' -inputs: - version: - required: false - contributor_name: - required: true - changelog: - required: true -runs: - using: 'docker' - image: 'Dockerfile' diff --git a/.github/read-tweet-action/read.py b/.github/read-tweet-action/read.py deleted file mode 100644 index 1aae951945..0000000000 --- a/.github/read-tweet-action/read.py +++ /dev/null @@ -1,62 +0,0 @@ -import base64 -import os -from pathlib import Path -from string import Template - -import markdown -from bs4 import BeautifulSoup - - -changelog = os.environ["INPUT_CHANGELOG"] -version = os.environ.get("INPUT_VERSION", "(next)") -contributor = os.environ["INPUT_CONTRIBUTOR_NAME"] -release_url = f"https://github.com/strawberry-graphql/strawberry/releases/tag/{version}" - -card_text = "" -tweet = """ -🆕 Release $version is out! Thanks to $contributor for the PR 👏 - -Get it here 👉 $release_url -""".strip() - -tweet_path = Path("./TWEET.md") -has_tweet_file = False - -if tweet_path.exists(): - has_tweet_file = True - - with tweet_path.open(mode="r") as f: - contents = f.read() - - tweet, _, card_text = [part.strip() for part in contents.partition("---")] - -if not card_text: - card_text = changelog -else: - card_text = base64.b64encode(card_text.encode("utf-8")).decode("ascii") - -tweet_template = Template(tweet) -tweet = tweet_template.substitute( - contributor=contributor, - version=version, - release_url=release_url, -) - - -def convert_markdown_to_text(md: str) -> str: - """Converts a markdown string to text to handle new lines in a nice way.""" - html = markdown.markdown(md) - - soup = BeautifulSoup(html, features="html.parser") - - for tag in soup.find_all(): - tag.replace_with(tag.text.replace("\n", " ")) - - return soup.get_text(separator="\n\n", strip=True) - - -tweet = base64.b64encode(tweet.encode("utf-8")).decode("ascii") - -print(f"::set-output name=tweet::{tweet}") -print(f"::set-output name=card-text::{card_text}") -print(f"::set-output name=has-tweet-file::{'true' if has_tweet_file else 'false'}") diff --git a/.github/validate-tweet-action/Dockerfile b/.github/validate-tweet-action/Dockerfile deleted file mode 100644 index 48596dae5b..0000000000 --- a/.github/validate-tweet-action/Dockerfile +++ /dev/null @@ -1,13 +0,0 @@ -FROM node:14-alpine - -RUN npm i -g @vercel/ncc - -COPY package-lock.json package.json / - -RUN npm install - -COPY main.js . - -RUN ncc build main.js -o dist - -ENTRYPOINT ["node", "/dist/index.js"] diff --git a/.github/validate-tweet-action/action.yml b/.github/validate-tweet-action/action.yml deleted file mode 100644 index 5b5cd8022b..0000000000 --- a/.github/validate-tweet-action/action.yml +++ /dev/null @@ -1,7 +0,0 @@ -name: 'Validate tweet action' -inputs: - tweet: - required: true -runs: - using: 'docker' - image: 'Dockerfile' diff --git a/.github/validate-tweet-action/main.js b/.github/validate-tweet-action/main.js deleted file mode 100644 index 87895179bf..0000000000 --- a/.github/validate-tweet-action/main.js +++ /dev/null @@ -1,13 +0,0 @@ -const core = require('@actions/core'); -const twitter = require('twitter-text') - -const tweetEncoded = core.getInput('tweet'); - -const buff = Buffer.from(tweetEncoded, "base64"); -const tweet = buff.toString("ascii"); - -const result = twitter.parseTweet(tweet); - -if (!result.valid) { - core.setFailed(`Tweet is not valid!`); -} diff --git a/.github/validate-tweet-action/package-lock.json b/.github/validate-tweet-action/package-lock.json deleted file mode 100644 index 7d3aefd864..0000000000 --- a/.github/validate-tweet-action/package-lock.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "name": "validate-tweet-action", - "version": "1.0.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@actions/core": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.4.0.tgz", - "integrity": "sha512-CGx2ilGq5i7zSLgiiGUtBCxhRRxibJYU6Fim0Q1Wg2aQL2LTnF27zbqZOrxfvFQ55eSBW0L8uVStgtKMpa0Qlg==" - }, - "@babel/runtime": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" - }, - "twemoji-parser": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/twemoji-parser/-/twemoji-parser-11.0.2.tgz", - "integrity": "sha512-5kO2XCcpAql6zjdLwRwJjYvAZyDy3+Uj7v1ipBzLthQmDL7Ce19bEqHr3ImSNeoSW2OA8u02XmARbXHaNO8GhA==" - }, - "twitter-text": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/twitter-text/-/twitter-text-3.1.0.tgz", - "integrity": "sha512-nulfUi3FN6z0LUjYipJid+eiwXvOLb8Ass7Jy/6zsXmZK3URte043m8fL3FyDzrK+WLpyqhHuR/TcARTN/iuGQ==", - "requires": { - "@babel/runtime": "^7.3.1", - "core-js": "^2.5.0", - "punycode": "1.4.1", - "twemoji-parser": "^11.0.2" - } - } - } -} diff --git a/.github/validate-tweet-action/package.json b/.github/validate-tweet-action/package.json deleted file mode 100644 index afb0dbde7d..0000000000 --- a/.github/validate-tweet-action/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "validate-tweet-action", - "version": "1.0.0", - "description": "", - "main": "main.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "keywords": [], - "author": "", - "license": "ISC", - "dependencies": { - "@actions/core": "^1.4.0", - "twitter-text": "^3.1.0" - } -} diff --git a/.github/workflows/release-check.yml b/.github/workflows/release-check.yml index 8e5a4b4ebe..4ff067a11b 100644 --- a/.github/workflows/release-check.yml +++ b/.github/workflows/release-check.yml @@ -94,7 +94,7 @@ jobs: ref: "refs/pull/${{ github.event.number }}/merge" - name: Extract tweet message and changelog id: extract - uses: ./.github/read-tweet-action + uses: strawberry-graphql/tweet-actions/read-tweet@v1 with: changelog: ${{ needs.release-file-check.outputs.changelog }} version: "(next)" @@ -107,7 +107,7 @@ jobs: steps: - uses: actions/checkout@v2 - name: Validate tweet - uses: ./.github/validate-tweet-action + uses: strawberry-graphql/tweet-actions/validate-tweet@v1 with: tweet: ${{ needs.read-tweet-md.outputs.tweet }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2ff844913b..86ffc32233 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -100,7 +100,7 @@ jobs: - uses: actions/checkout@v1 - name: Extract tweet message and changelog id: extract - uses: ./.github/read-tweet-action + uses: strawberry-graphql/tweet-actions/read-tweet@v1 with: changelog: ${{ needs.release-file-check.outputs.changelog }} version: ${{ needs.release.outputs.version }}