月亮

[github] Tistory 글 작성하고 Github 잔디심기, README.md에 gif 파일 넣기 본문

git,github,yarn

[github] Tistory 글 작성하고 Github 잔디심기, README.md에 gif 파일 넣기

듀네 2023. 3. 14. 21:14

Tistory와 Github 연동

1. Tistory RSS 설정

- 블로그 설정 - 블로그 - 기타설정 - RSS 전체공개

2. 확인 : 블로그/rss 

ex) https://yueliang-front-end.tistory.com/rss

 

3. Github Action으로 자동화하기

1). commit 할 repository 생성하기!

2). 로컬에 생성한 repository clone하기

3).

npm init -y

4). rss-parser 설치

npm i rss-parser

5). package.json에 추가

  "main": "index.js",
  "type": "module",
  "scripts": {
    "start": "node index.js"
  },

6). 루트에 index.js 생성, 입력

import { writeFileSync } from 'node:fs';
import Parser from "rss-parser";

/**
 * README.MD
 */
 
let text = `# Hi there 👋

## 이런 환경에 익숙해요✍🏼

## 📕 Latest Blog Posts

`;

// rss-parser 생성
const parser = new Parser({
    headers: {
        Accept: 'application/rss+xml, application/xml, text/xml; q=0.1',
    }});

(async () => {

    // 피드 목록
    const feed = await parser.parseURL('https://systorage.tistory.com/rss');

    // 최신 5개의 글의 제목과 링크를 가져온 후 text에 추가
    for (let i = 0; i < 5; i++) {
        const {title, link} = feed.items[i];
        console.log(`${i + 1}번째 게시물`);
        console.log(`추가될 제목: ${title}`);
        console.log(`추가될 링크: ${link}`);
        text += `<a href=${link}>${title}</a></br>`;
    }

    // README.md 파일 작성
    writeFileSync('README.md', text, 'utf8', (e) => {
        console.log(e)
    })

    console.log('업데이트 완료')
})();

7). 루트에 ".github" 폴더 생성 ("." 빼먹기 않기) 그 안에 workflows 이름의 폴더 생성 그 안에 main.yml 파일 생성 (git action)

 

8). main.yml 입력

# This is a basic workflow to help you get started with Actions

name: Readme Update

# Controls when the workflow will run
on:
# 1시간에 한번씩 아래 스크립트를 실행한다.
  schedule:
    - cron: "0 */1 * * *"
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
  # This workflow contains a single job called "build"
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: 16
      - name: Install dependencies
        run: npm ci
      - name: Update README
        run: npm start
      - name: Commit README
        run: |
          git add .
          git config --local user.email "본인 github 이메일"
          git config --local user.name "본인의 github 이름"
          git commit -m "Update README.md"
          git push

9). push 하면 README.md 생성

 

403 오류, permission 오류가 날 경우

repo로 이동 -> setting -> action -> general ->workflow -> permission -> read and write permission 누른다!!

 

 

READ.md에 gif 파일 넣기

git repo -> issue -> 넣으려는 git 파일 드러그앤드롭

markdown 형식으로 변한 거 따기!

 

index.js -> text 변수에 추가!

let text = `
![tumblr_274a5850aed7bb06a033d29105882770_01bb2de3_500](https://user-images.githubusercontent.com/91704826/224994575-846ea991-f3dc-4b0d-a9b3-e3cc7928ea44.gif)
# 👋

## 📕 Latest Blog Posts

`;

결과 :

 

 


다음에는 파이썬으루~

md파일을 바로 블로그에 올려주는 repo도 봤는데 다음에 해봐야겠다

 

 

 

출저 : https://systorage.tistory.com/entry/Tistory-Nodejs%EB%A5%BC-%ED%99%9C%EC%9A%A9%ED%95%9C-%ED%8B%B0%EC%8A%A4%ED%86%A0%EB%A6%AC-%EA%B8%80-%EC%9E%91%EC%84%B1-%EC%8B%9C-Github%EC%97%90-commit-%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

반응형
Comments