@@ -125,8 +125,12 @@ defmodule Hexdocs.Queue do
125125 update_package_sitemap ( repository , key , package , files )
126126 end
127127
128+ if repository == "hexpm" do
129+ update_search_index ( key , package , version , files )
130+ end
131+
128132 elapsed = System . os_time ( :millisecond ) - start
129- Logger . info ( "FINISHED UPLOADING DOCS #{ key } #{ elapsed } ms" )
133+ Logger . info ( "FINISHED UPLOADING AND INDEXING DOCS #{ key } #{ elapsed } ms" )
130134
131135 { :error , reason } ->
132136 Logger . error ( "Failed unpack #{ repository } /#{ package } #{ version } : #{ reason } " )
@@ -149,6 +153,10 @@ defmodule Hexdocs.Queue do
149153 Hexdocs.Bucket . delete ( repository , package , version , all_versions )
150154 update_index_sitemap ( repository , key )
151155
156+ if repository == "hexpm" do
157+ Hexdocs.Search . delete ( package , version )
158+ end
159+
152160 elapsed = System . os_time ( :millisecond ) - start
153161 Logger . info ( "FINISHED DELETING DOCS #{ key } #{ elapsed } ms" )
154162 :ok
@@ -228,6 +236,14 @@ defmodule Hexdocs.Queue do
228236 :ok
229237 end
230238
239+ defp update_search_index ( key , package , version , files ) do
240+ with { proglang , items } <- Hexdocs.Search . find_search_items ( package , version , files ) do
241+ Logger . info ( "UPDATING SEARCH INDEX #{ key } " )
242+ Hexdocs.Search . index ( package , version , proglang , items )
243+ Logger . info ( "UPDATED SEARCH INDEX #{ key } " )
244+ end
245+ end
246+
231247 @ doc false
232248 def paths_for_sitemaps ( ) do
233249 key_regex = ~r" docs/(.*)-(.*).tar.gz$"
0 commit comments