Added SQL rss feed, Fixed regex for image, and scp files to hpr server
This commit is contained in:
@@ -18,6 +18,7 @@ last_update_txt="${sql_save_dir}/last_update.txt"
|
|||||||
hpr_full_sql="${sql_save_dir}/hpr_hpr_full.sql"
|
hpr_full_sql="${sql_save_dir}/hpr_hpr_full.sql"
|
||||||
hpr_site_sql="${sql_save_dir}/hpr.sql"
|
hpr_site_sql="${sql_save_dir}/hpr.sql"
|
||||||
full_mysqldump_sql="${sql_save_dir}/mysqldump.sql"
|
full_mysqldump_sql="${sql_save_dir}/mysqldump.sql"
|
||||||
|
hpr_database_file="hackerpublicradio.org/public_html/hpr.sql"
|
||||||
|
|
||||||
sync_delay_seconds="300" # 5 minutes
|
sync_delay_seconds="300" # 5 minutes
|
||||||
|
|
||||||
@@ -143,14 +144,51 @@ fi
|
|||||||
mysqldump --defaults-file="${credential_file}" --tz-utc --add-drop-database --databases hpr_hpr> "${full_mysqldump_sql}"
|
mysqldump --defaults-file="${credential_file}" --tz-utc --add-drop-database --databases hpr_hpr> "${full_mysqldump_sql}"
|
||||||
tail "${full_mysqldump_sql}" | grep 'Dump completed on'
|
tail "${full_mysqldump_sql}" | grep 'Dump completed on'
|
||||||
|
|
||||||
|
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
|
||||||
|
<rss xmlns:atom=\"https://www.w3.org/2005/Atom\" version=\"2.0\">
|
||||||
|
<channel>
|
||||||
|
<title>Hacker Public Radio ~ Database Feed</title>
|
||||||
|
<link>http://hackerpublicradio.org/about.html</link>
|
||||||
|
<description>This Feed provides information the latest version of the HPR database.</description>
|
||||||
|
<language>en-us</language>
|
||||||
|
<copyright>Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) License</copyright>
|
||||||
|
<managingEditor>feedback.nospam@nospam.hackerpublicradio.org (HPR Feedback)</managingEditor>
|
||||||
|
<webMaster>admin.nospam@nospam.hackerpublicradio.org (HPR Webmaster)</webMaster>
|
||||||
|
<generator>https://repo.anhonesthost.net/HPR/hpr-tools/src/branch/main/workflow/hpr_db_backup.bash</generator>
|
||||||
|
<docs>https://www.rssboard.org/rss-specification</docs>
|
||||||
|
<ttl>15</ttl>
|
||||||
|
<image>
|
||||||
|
<url>http://hackerpublicradio.org/images/hpr_feed_small.png</url>
|
||||||
|
<title>Hacker Public Radio ~ Database Feed</title>
|
||||||
|
<link>http://hackerpublicradio.org/about.html</link>
|
||||||
|
<description>The Hacker Public Radio Old Microphone Logo</description>
|
||||||
|
<height>164</height>
|
||||||
|
<width>144</width>
|
||||||
|
</image>
|
||||||
|
<atom:link href=\"https://hackerpublicradio.org/hpr.sql.rss\" rel=\"self\" type=\"application/rss+xml\"/>
|
||||||
|
<pubDate>$( date --utc --rfc-email )</pubDate>
|
||||||
|
<item>
|
||||||
|
<title>Export of the Public mariadb SQL for ${live_db_last_update_iso8601}</title>
|
||||||
|
<author>admin.nospam@nospam.hackerpublicradio.org (Janitors)</author>
|
||||||
|
<link>http://hackerpublicradio.org/hpr.sql#${live_db_last_update_iso8601}</link>
|
||||||
|
<description/>
|
||||||
|
<pubDate>$( date --utc --rfc-email )</pubDate>
|
||||||
|
<enclosure url=\"http://hackerpublicradio.org/hpr.sql#${live_db_last_update_iso8601}\" length=\"$( ls -al "${hpr_site_sql}" | awk '{print $5}' )\" type=\"application/sql\"/>
|
||||||
|
<guid isPermaLink=\"false\">sha1sum:$( sha1sum "${hpr_site_sql}" | awk '{print $1}' ),md5sum:$( md5sum "${hpr_site_sql}" | awk '{print $1}' )</guid>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>" > "${hpr_site_sql}.rss"
|
||||||
|
|
||||||
if [ $HOSTNAME = "whp01.cloud-hosting.io" ]
|
if [ $HOSTNAME = "whp01.cloud-hosting.io" ]
|
||||||
then
|
then
|
||||||
cp -v "${hpr_site_sql}" $HOME/hackerpublicradio.org/public_html/hpr.sql
|
cp -v "${hpr_site_sql}" "$HOME/${hpr_database_file}"
|
||||||
|
cp -v "${hpr_site_sql}.rss" "$HOME/${hpr_database_file}.rss"
|
||||||
else
|
else
|
||||||
rsync -av --partial --progress ${hpr_site_sql} hpr:hackerpublicradio.org/public_html/hpr.sql
|
rsync -av --partial --progress ${hpr_site_sql} hpr:${hpr_database_file}
|
||||||
|
rsync -av --partial --progress ${hpr_site_sql}.rss hpr:${hpr_database_file}.rss
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "${live_db_last_update_iso8601}" > "${last_update_txt}"
|
echo "${live_db_last_update_iso8601}" > "${last_update_txt}"
|
||||||
|
|
||||||
|
echo "Finished export of \"${live_db_last_update_iso8601}\""
|
||||||
|
|
||||||
|
@@ -869,7 +869,7 @@ function extract_images_brute_force() {
|
|||||||
# Download referenced images
|
# Download referenced images
|
||||||
image_count_external="1"
|
image_count_external="1"
|
||||||
|
|
||||||
for image in $( grep --color=never --perl-regexp --only-matching '<img.*src.*http.*>' "${shownotes_html}" | awk -F 'src=' '{print $2}' | awk -F '"' '{print $2}' )
|
for image in $( grep --color=never --perl-regexp --only-matching '<img.*src.*http.*://.*>' "${shownotes_html}" | awk -F 'src=' '{print $2}' | awk -F '"' '{print $2}' )
|
||||||
do
|
do
|
||||||
this_image="${working_dir}/hpr${ep_num}_image_ext_${image_count_external}"
|
this_image="${working_dir}/hpr${ep_num}_image_ext_${image_count_external}"
|
||||||
wget "${image}" --output-document=${this_image}
|
wget "${image}" --output-document=${this_image}
|
||||||
@@ -1967,7 +1967,7 @@ function register_assets() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#################################################
|
#################################################
|
||||||
# Register the assets with the hpr database
|
# Copy the files to the origin server
|
||||||
|
|
||||||
function copy_files_to_origin_server() {
|
function copy_files_to_origin_server() {
|
||||||
|
|
||||||
@@ -2013,6 +2013,48 @@ function copy_files_to_origin_server() {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#################################################
|
||||||
|
# Copy the images to the hpr server
|
||||||
|
|
||||||
|
function copy_files_to_hpr_server() {
|
||||||
|
|
||||||
|
echo_debug "Copying the files to the hpr server. copy_files_to_hpr_server()"
|
||||||
|
|
||||||
|
check_variable_is_correct working_dir ep_num
|
||||||
|
|
||||||
|
# Get the file list from the HPR db
|
||||||
|
if [ -z "${files_json}" ]
|
||||||
|
then
|
||||||
|
files_json="${working_dir}/hpr${ep_num}_files.json"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -s "${files_json}" ]
|
||||||
|
then
|
||||||
|
echo_debug "Removing stale \"files_json\" file \"${files_json}\"."
|
||||||
|
rm -v "${files_json}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo_debug "Getting the \"files_json\" file from the HPR site."
|
||||||
|
if [ "$( curl --silent --netrc --write-out '%{http_code}' https://hub.hackerpublicradio.org/cms/assets.php?id=${ep_num} --output "${files_json}" )" != 200 ]
|
||||||
|
then
|
||||||
|
echo_error "The Episode hpr${ep_num} has not been posted"
|
||||||
|
fi
|
||||||
|
check_variable_is_correct files_json
|
||||||
|
|
||||||
|
ssh hpr -t "mkdir -v hackerpublicradio.org/public_html/eps/hpr${ep_num}"
|
||||||
|
|
||||||
|
for this_file in $( jq --raw-output ".hpr${ep_num} | keys | @tsv" "${files_json}" )
|
||||||
|
do
|
||||||
|
skip_file="$( echo "$this_file" | grep --count --perl-regexp "hpr${ep_num}.flac|hpr${ep_num}.mp3|hpr${ep_num}.ogg|hpr${ep_num}.opus|hpr${ep_num}.spx|hpr${ep_num}.srt|hpr${ep_num}.txt|hpr${ep_num}.wav" )"
|
||||||
|
if [ "${skip_file}" -eq "1" ]
|
||||||
|
then
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
scp "$this_file" hpr:hackerpublicradio.org/public_html/eps/hpr${ep_num}/
|
||||||
|
done
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
#################################################
|
#################################################
|
||||||
# Send the derived files to the server borg to be sent to borg
|
# Send the derived files to the server borg to be sent to borg
|
||||||
|
|
||||||
@@ -2334,6 +2376,8 @@ copy_files_to_origin_server
|
|||||||
|
|
||||||
check_variable_is_correct working_dir ep_num shownotes_edited
|
check_variable_is_correct working_dir ep_num shownotes_edited
|
||||||
|
|
||||||
|
copy_files_to_hpr_server
|
||||||
|
|
||||||
copy_derived_files_to_borg
|
copy_derived_files_to_borg
|
||||||
|
|
||||||
create_item_on_the_internet_archive
|
create_item_on_the_internet_archive
|
||||||
|
Reference in New Issue
Block a user