mirror of
				https://github.com/keanuplayz/TravBot-v3.git
				synced 2024-08-15 02:33:12 +00:00 
			
		
		
		
	Fixed GitHub Actions and addressed CodeQL issues
This commit is contained in:
		
							parent
							
								
									3cd05cd48c
								
							
						
					
					
						commit
						6361b83c05
					
				
					 4 changed files with 80 additions and 6 deletions
				
			
		
							
								
								
									
										8
									
								
								.github/workflows/image.yml
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								.github/workflows/image.yml
									
										
									
									
										vendored
									
									
								
							|  | @ -3,7 +3,6 @@ on: | ||||||
|     push: |     push: | ||||||
|         branches: |         branches: | ||||||
|             - typescript |             - typescript | ||||||
|             - docker |  | ||||||
| 
 | 
 | ||||||
| jobs: | jobs: | ||||||
|     analyze: |     analyze: | ||||||
|  | @ -16,9 +15,12 @@ jobs: | ||||||
|                   fetch-depth: 2 |                   fetch-depth: 2 | ||||||
| 
 | 
 | ||||||
|             - name: Setup Node.JS |             - name: Setup Node.JS | ||||||
|               uses: actions/setup-node@v2-beta |               uses: actions/setup-node@v2 | ||||||
|               with: |               with: | ||||||
|                   node-version: "12" |                   node-version: "14" | ||||||
|  |             # https://github.com/npm/cli/issues/558#issuecomment-580018468 | ||||||
|  |             # Error: "npm ERR! fsevents not accessible from jest-haste-map" | ||||||
|  |             # (supposed to just be a warning b/c optional dependency, but CI environment causes it to fail) | ||||||
|             - run: npm ci |             - run: npm ci | ||||||
| 
 | 
 | ||||||
|             - name: Build codebase |             - name: Build codebase | ||||||
|  |  | ||||||
							
								
								
									
										67
									
								
								Dockerfile
									
										
									
									
									
								
							
							
						
						
									
										67
									
								
								Dockerfile
									
										
									
									
									
								
							|  | @ -1,4 +1,69 @@ | ||||||
| FROM node:current-alpine | ############### | ||||||
|  | # Solution #1 # | ||||||
|  | ############### | ||||||
|  | # https://github.com/geekduck/docker-node-canvas | ||||||
|  | # Took 20m 55s | ||||||
|  | 
 | ||||||
|  | #FROM node:12 | ||||||
|  | # | ||||||
|  | #RUN apt-get update \ | ||||||
|  | #	&& apt-get install -qq build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev | ||||||
|  | # | ||||||
|  | #RUN mkdir -p /opt/node/js \ | ||||||
|  | #	&& cd /opt/node \ | ||||||
|  | #	&& npm i canvas | ||||||
|  | # | ||||||
|  | #WORKDIR /opt/node/js | ||||||
|  | # | ||||||
|  | #ENTRYPOINT ["node"] | ||||||
|  | 
 | ||||||
|  | ############### | ||||||
|  | # Solution #2 # | ||||||
|  | ############### | ||||||
|  | # https://github.com/Automattic/node-canvas/issues/729#issuecomment-352991456 | ||||||
|  | # Took 22m 50s | ||||||
|  | 
 | ||||||
|  | #FROM ubuntu:xenial | ||||||
|  | # | ||||||
|  | #RUN apt-get update && apt-get install -y \ | ||||||
|  | #	curl \ | ||||||
|  | #	git | ||||||
|  | # | ||||||
|  | #RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - \ | ||||||
|  | #	&& curl -sL https://deb.nodesource.com/setup_8.x | bash - \ | ||||||
|  | #	&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ | ||||||
|  | #	&& echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list | ||||||
|  | # | ||||||
|  | #RUN apt-get update && apt-get install -y \ | ||||||
|  | #	nodejs \ | ||||||
|  | #	yarn \ | ||||||
|  | #	libcairo2-dev \ | ||||||
|  | #	libjpeg-dev \ | ||||||
|  | #	libpango1.0-dev \ | ||||||
|  | #	libgif-dev \ | ||||||
|  | #	libpng-dev \ | ||||||
|  | #	build-essential \ | ||||||
|  | #	g++ | ||||||
|  | 
 | ||||||
|  | ############### | ||||||
|  | # Solution #3 # | ||||||
|  | ############### | ||||||
|  | # https://github.com/Automattic/node-canvas/issues/866#issuecomment-330001221 | ||||||
|  | # Took 7m 29s | ||||||
|  | 
 | ||||||
|  | FROM node:10.16.0-alpine | ||||||
|  | FROM mhart/alpine-node:8.5.0 | ||||||
|  | 
 | ||||||
|  | RUN apk add --no-cache \ | ||||||
|  | 	build-base \ | ||||||
|  | 	g++ \ | ||||||
|  | 	cairo-dev \ | ||||||
|  | 	jpeg-dev \ | ||||||
|  | 	pango-dev \ | ||||||
|  | 	bash \ | ||||||
|  | 	imagemagick | ||||||
|  | 
 | ||||||
|  | # The rest of the commands to execute | ||||||
| 
 | 
 | ||||||
| COPY . . | COPY . . | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -43,6 +43,9 @@ | ||||||
|         "tsc-watch": "^4.2.9", |         "tsc-watch": "^4.2.9", | ||||||
|         "typescript": "^3.9.7" |         "typescript": "^3.9.7" | ||||||
|     }, |     }, | ||||||
|  |     "optionalDependencies": { | ||||||
|  |         "fsevents": "^2.1.2" | ||||||
|  |     }, | ||||||
|     "author": "Keanu Timmermans", |     "author": "Keanu Timmermans", | ||||||
|     "license": "MIT", |     "license": "MIT", | ||||||
|     "keywords": [ |     "keywords": [ | ||||||
|  |  | ||||||
|  | @ -139,12 +139,16 @@ export interface GenericJSON { | ||||||
|     [key: string]: any; |     [key: string]: any; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | // In order to define a file to write to while also not:
 | ||||||
|  | // - Using the delete operator (which doesn't work on properties which cannot be undefined)
 | ||||||
|  | // - Assigning it first then using Object.defineProperty (which raises a flag on CodeQL)
 | ||||||
|  | // A non-null assertion is used on the class property to say that it'll definitely be assigned.
 | ||||||
| export abstract class GenericStructure { | export abstract class GenericStructure { | ||||||
|     private __meta__ = "generic"; |     private __meta__!: string; | ||||||
| 
 | 
 | ||||||
|     constructor(tag?: string) { |     constructor(tag?: string) { | ||||||
|         this.__meta__ = tag || this.__meta__; |  | ||||||
|         Object.defineProperty(this, "__meta__", { |         Object.defineProperty(this, "__meta__", { | ||||||
|  |             value: tag || "generic", | ||||||
|             enumerable: false |             enumerable: false | ||||||
|         }); |         }); | ||||||
|     } |     } | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue