mirror of
				https://github.com/advplyr/audiobookshelf.git
				synced 2025-10-27 11:18:14 +01:00 
			
		
		
		
	Merge branch 'master' of https://github.com/advplyr/audiobookshelf
This commit is contained in:
		
						commit
						911c854365
					
				
							
								
								
									
										44
									
								
								.github/workflows/integration-test.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								.github/workflows/integration-test.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,44 @@
 | 
				
			|||||||
 | 
					name: Integration Test
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					on:
 | 
				
			||||||
 | 
					  pull_request:
 | 
				
			||||||
 | 
					  push:
 | 
				
			||||||
 | 
					    branches-ignore:
 | 
				
			||||||
 | 
					      - 'dependabot/**'  # Don't run dependabot branches, as they are already covered by pull requests
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					jobs:
 | 
				
			||||||
 | 
					  build:
 | 
				
			||||||
 | 
					    name: build and test
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					      - uses: actions/checkout@v3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: setup nade
 | 
				
			||||||
 | 
					        uses: actions/setup-node@v3
 | 
				
			||||||
 | 
					        with:
 | 
				
			||||||
 | 
					          node-version: 16
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: install pkg
 | 
				
			||||||
 | 
					        run: npm install -g pkg
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: get client dependencies
 | 
				
			||||||
 | 
					        working-directory: client
 | 
				
			||||||
 | 
					        run: npm ci
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: build client
 | 
				
			||||||
 | 
					        working-directory: client
 | 
				
			||||||
 | 
					        run: npm run generate
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: get server dependencies
 | 
				
			||||||
 | 
					        run: npm ci --only=production
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: build binary
 | 
				
			||||||
 | 
					        run: pkg -t node18-linux-x64 -o audiobookshelf .
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: run audiobookshelf
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          ./audiobookshelf &
 | 
				
			||||||
 | 
					          sleep 5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: test if server is available
 | 
				
			||||||
 | 
					        run: curl -sf http://127.0.0.1:3333 | grep Audiobookshelf
 | 
				
			||||||
@ -24,9 +24,15 @@ class NotificationManager {
 | 
				
			|||||||
      libraryItemId: libraryItem.id,
 | 
					      libraryItemId: libraryItem.id,
 | 
				
			||||||
      libraryId: libraryItem.libraryId,
 | 
					      libraryId: libraryItem.libraryId,
 | 
				
			||||||
      libraryName: library ? library.name : 'Unknown',
 | 
					      libraryName: library ? library.name : 'Unknown',
 | 
				
			||||||
 | 
					      mediaTags: (libraryItem.media.tags || []).join(', '),
 | 
				
			||||||
      podcastTitle: libraryItem.media.metadata.title,
 | 
					      podcastTitle: libraryItem.media.metadata.title,
 | 
				
			||||||
 | 
					      podcastAuthor: libraryItem.media.metadata.author || '',
 | 
				
			||||||
 | 
					      podcastDescription: libraryItem.media.metadata.description || '',
 | 
				
			||||||
 | 
					      podcastGenres: (libraryItem.media.metadata.genres || []).join(', '),
 | 
				
			||||||
      episodeId: episode.id,
 | 
					      episodeId: episode.id,
 | 
				
			||||||
      episodeTitle: episode.title
 | 
					      episodeTitle: episode.title,
 | 
				
			||||||
 | 
					      episodeSubtitle: episode.subtitle || '',
 | 
				
			||||||
 | 
					      episodeDescription: episode.description || ''
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    this.triggerNotification('onPodcastEpisodeDownloaded', eventData)
 | 
					    this.triggerNotification('onPodcastEpisodeDownloaded', eventData)
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -7,7 +7,7 @@ module.exports.notificationData = {
 | 
				
			|||||||
      requiresLibrary: true,
 | 
					      requiresLibrary: true,
 | 
				
			||||||
      libraryMediaType: 'podcast',
 | 
					      libraryMediaType: 'podcast',
 | 
				
			||||||
      description: 'Triggered when a podcast episode is auto-downloaded',
 | 
					      description: 'Triggered when a podcast episode is auto-downloaded',
 | 
				
			||||||
      variables: ['libraryItemId', 'libraryId', 'podcastTitle', 'episodeTitle', 'libraryName', 'episodeId'],
 | 
					      variables: ['libraryItemId', 'libraryId', 'podcastTitle', 'podcastAuthor', 'podcastDescription', 'podcastGenres', 'episodeTitle', 'episodeSubtitle', 'episodeDescription', 'libraryName', 'episodeId', 'mediaTags'],
 | 
				
			||||||
      defaults: {
 | 
					      defaults: {
 | 
				
			||||||
        title: 'New {{podcastTitle}} Episode!',
 | 
					        title: 'New {{podcastTitle}} Episode!',
 | 
				
			||||||
        body: '{{episodeTitle}} has been added to {{libraryName}} library.'
 | 
					        body: '{{episodeTitle}} has been added to {{libraryName}} library.'
 | 
				
			||||||
@ -16,9 +16,15 @@ module.exports.notificationData = {
 | 
				
			|||||||
        libraryItemId: 'li_notification_test',
 | 
					        libraryItemId: 'li_notification_test',
 | 
				
			||||||
        libraryId: 'lib_test',
 | 
					        libraryId: 'lib_test',
 | 
				
			||||||
        libraryName: 'Podcasts',
 | 
					        libraryName: 'Podcasts',
 | 
				
			||||||
 | 
					        mediaTags: 'TestTag1, TestTag2',
 | 
				
			||||||
        podcastTitle: 'Abs Test Podcast',
 | 
					        podcastTitle: 'Abs Test Podcast',
 | 
				
			||||||
 | 
					        podcastAuthor: 'Audiobookshelf',
 | 
				
			||||||
 | 
					        podcastDescription: 'Description of the Abs Test Podcast belongs here.',
 | 
				
			||||||
 | 
					        podcastGenres: 'TestGenre1, TestGenre2',
 | 
				
			||||||
        episodeId: 'ep_notification_test',
 | 
					        episodeId: 'ep_notification_test',
 | 
				
			||||||
        episodeTitle: 'Successful Test'
 | 
					        episodeTitle: 'Successful Test Episode',
 | 
				
			||||||
 | 
					        episodeSubtitle: 'Episode Subtitle',
 | 
				
			||||||
 | 
					        episodeDescription: 'Some description of the podcast episode.'
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user